arrays - 将数据从 Firebase 拉到本地数组,但不能迭代每个项目。长度 = 0
问题描述
我有一个数组和字符串定义如下:
Day1;Day2;Day3;Day4;Day5: string;
BurnData: Array<number> = [];
一个这样的函数,我在其中对他们各自日期的值进行评分:
grabBurnData(): void{
this.db.collection('MattDataPull').doc('Board1').get().toPromise().then(r => {
this.BurnData.push(
parseInt(r.get('Day1')),
parseInt(r.get('Day2')),
parseInt(r.get('Day3')),
parseInt(r.get('Day4')),
parseInt(r.get('Day5')));
});
}
似乎为什么我在 console.log 中,值在数组中,但我无法遍历它们。我得到'未定义'。这里发生了什么?我该如何解决这个问题?
解决方案
我假设您的r.get('Day1')
函数将返回一个Number
. 尝试这样的事情。BurnData
将您的Array 类型更改为any
以防万一,以避免任何类型转换错误。
Day1;Day2;Day3;Day4;Day5: string;
BurnData: Array<any> = [];
grabBurnData(): void {
this.db.collection('MattDataPull').doc('Board1').get().toPromise().then(r => {
this.BurnData.push(parseInt(r.get('Day1')));
this.BurnData.push(parseInt(r.get('Day2')));
this.BurnData.push(parseInt(r.get('Day3')));
this.BurnData.push(parseInt(r.get('Day4')));
this.BurnData.push(parseInt(r.get('Day5')));
});
}
推荐阅读
- mapbox - Mapbox - 无效的瓷砖顺序
- c++ - 我遇到了这个代码片段并且不明白。它递归地检查 C++ 字符串中是否存在大写字符
- css - 动画卡片内下拉菜单的 Z-index 问题
- ruby - `&method(:function)` 是什么意思?
- php - 如何在 WordPress 中显示翻译后的作者角色名称
- asynchronous - 如何创建一个流,其中项目基于流先前返回的项目?
- go - 使用 UNWIND 时如何访问 Neo4j 结果?
- asp.net - Azure AD 身份验证无休止循环,错误太多请求
- calendar - Google 日历让日历所有者收到新活动的电子邮件通知
- kotlin - Flutter 应用程序是否需要 Kotlin 插件?