小编Tri*_*tan的帖子

新创建的 Firebase 函数抛出未经验证的错误

我有一个包含 10 多个云函数的 Firebase 项目。今天我又添加了 3 个,但所有三个新的都抛出了一个错误 UNAUTHENTICATED 没有真正尝试点击函数。(日志中没有函数调用的记录)。自从添加了以前的功能后,我没有对我的环境或 Firebase 项目进行任何更改。

我尝试重新部署项目中的所有功能,三个最新的功能继续失败,而前一个功能正常。我还验证了我使用的是 Node 8,因为使用 Node 10 报告了一些类似的问题。我不确定还可以尝试什么,因为该问题仅适用于新功能。

新函数都有一个相似的签名:

exports.createGroup = functions.https.onCall((data, context) => {
  //Firestore access
});
Run Code Online (Sandbox Code Playgroud)

他们被这样称呼:

const create = functions().httpsCallable('createGroup');
return create({ group: oGroup }).then(result => {
      //Do something
}).catch(err => {
      console.log(err.message); //UNAUTHENTICATED
});
Run Code Online (Sandbox Code Playgroud)

节点版本:8.16.2

Firebase 工具版本:7.6.1

firebase google-cloud-functions

10
推荐指数
5
解决办法
2160
查看次数

FCM 为 IOS 通知抛出无效参数

我的项目以前有工作通知,我无法追踪我发送的有效负载的任何更改。我已经参考了文档,但看不到我的有效负载有任何问题。我得到的确切错误是

请求包含无效参数

let payload = {
    token : oUser.devicetoken,
    data : {
        referenceid : chatid,
        referencetype : 'chat',
        referencename : oSender.displayname,
        receiverid : userid,
        type : 'message',
        notificationid : res,
        title : title,
        body : `${oSender.displayname} : ${body}`
    },
    android : {
        priority : 'high'
    },
    apns : {
        payload : {
            aps : {
                'content-available' : 1
            }
        },
        headers : {
            'apns-push-type' : 'background',
            'apns-priority' : '5',
            'apns-topic' : 'llc.attebyte.partyme'
        }
    }
};
Run Code Online (Sandbox Code Playgroud)

我当前的有效载荷:

在重新查看 Apple 文档的通知后,我注意到我应该使用content-available …

apple-push-notifications ios firebase react-native firebase-cloud-messaging

9
推荐指数
1
解决办法
535
查看次数

为什么 ngClass 无限期地调用函数?

我试图根据存储中是否存在值或设置为特定值来添加一个类。我正在尝试为此使用 [ngClass]。出于某种原因,我检查存储的函数被无限调用。是什么导致了这种行为,我该如何阻止它?

我的 html 文件中的用法示例之一:

<div id="level2" class="cell middle" [ngClass]="{'locked': checkLevel(2)}">
Run Code Online (Sandbox Code Playgroud)

checkLevel 函数:

checkLevel(level): any{
        console.log("checkLevel(" + level + ")");
        var result = this.storage.getLevel(level.toString());
        console.log(result);
        if (result == null || result['status'] == 'locked'){
            return true;
        } else {
            return false;
        }
    }
Run Code Online (Sandbox Code Playgroud)

getLevel 函数:

getLevel(level:string):any{
        console.log("Inside getLevel.");
        this.storage.get('games' + level).then((val) => {
            console.log(val);
            return val;
        });
    }
Run Code Online (Sandbox Code Playgroud)

输出到控制台:

checkLevel(10)
storage.ts:20 Inside getLevel.
levels.ts:28 undefined
levels.ts:26 checkLevel(11)
storage.ts:20 Inside getLevel.
levels.ts:28 undefined
levels.ts:26 checkLevel(12)
storage.ts:20 Inside getLevel.
levels.ts:28 undefined
levels.ts:26 checkLevel(13) …
Run Code Online (Sandbox Code Playgroud)

ng-class ionic-framework ionic3 angular

5
推荐指数
1
解决办法
2670
查看次数

在 Ionic 中将 Div 滚动到底部

我有一个离子页面,其中有一个可滚动的 div。

<div #list class="main">
    <div class="row-container" *ngFor="let log of logs">
        <p class="log">{{log.guess}}  -  {{log.result}}</p>
        <div class="score-container">
            <ion-icon name="star" style="color: gold;"></ion-icon>
            <p class="score">{{log.score}}</p>
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

div的类:

.main {
    height: 90%;
    border-top: 1px solid black;
    overflow-y: scroll;
}
Run Code Online (Sandbox Code Playgroud)

我想在页面加载时以及在列表中添加新项目时自动滚动到 div 的底部。

到目前为止,我已经尝试使用@ViewChild('list') list:any;来获取元素。然后:

this.list.scrollTop = this.list.scrollHeight;
Run Code Online (Sandbox Code Playgroud)

this.list.scrollToBottom(100);
Run Code Online (Sandbox Code Playgroud)

scrollTop就是行不通。scrollToBottom抛出一个错误,指出 scrollToBottom 不是一个函数。

如何滚动到div的底部?

typescript ionic-framework ionic3

1
推荐指数
1
解决办法
1400
查看次数