javascript - 找不到类型为 'object' 的不同支持对象 '[object Object]',但它已经是一个数组
问题描述
我有从后端获取数据到数组的方法
这是方法
getUtilities(): void {
// DropdownHelpers.fillDropdownOptions(
// this._propertyService.getMarketingInformationUtilityTypes(),
// this.utilities
// );
this._propertyService.getMarketingInformationUtilityTypes().subscribe(result => {
this.utilities = result.items;
console.log(this.utilities);
});
}
这是我在控制台中看到的
但是当我尝试做*ngFor="let utility of utilities"
我有
MarketingEditComponent.html:38 错误错误:找不到类型为“对象”的不同支持对象“[对象对象]”。NgFor 仅支持绑定到 Iterables,例如 Arrays。
我的问题在哪里?数据正在返回数组
解决方案
this.utilities
在 API 调用之前可能未定义 - 当时它不是一个数组。
解决方案:
- 在循环之前添加
*ngIf
以检查它是否是模板中的数组。
或者
- 定义时将其初始化为空数组,即
this.utilities = [];
推荐阅读
- python - numpy中具有多个参数的分段函数
- php - 在 Woocommerce 中为产品变体设置不同的输入数量值
- firebase - flutter firebase google登录以及如何从多个类访问
- c# - 与 TcpClient 的多个连接,第二个连接总是挂起/什么都不做
- c++ - c + set和unordered_set之间的不同结果
- python - 如何将列表转换为csv中的列?
- excel - 根据列的值将一个表拆分为多个较小的表-Power Query
- c++ - std::add_const_t
& vs 常量 T& - docker - Docker 容器在 Jelastic 环境中停止
- python - Bellman-Ford 算法的 Yen 和 Bannister-Eppstein 优化