Angular 4如何从对象数组中读取rate属性及$values值
提取数组对象中rate的$values值解决方案
嘿,这事儿不难搞定!你已经通过Object.values(this.product.reviews)拿到了reviews的数组,接下来只需要用数组的map方法,就能轻松提取每个对象里rate属性的$values值啦。
直接提取的代码示例
修改你的ngOnInit方法,新增一行代码来处理:
async ngOnInit() { this.product$ = await this.reviewService.getReview(this.product.$key); this.key = Object.values(this.product.reviews); // 提取所有rate的$values到新数组 const rateValues = this.key.map(item => item.rate.$values); // 现在rateValues就是你要的所有rate记录的$values集合了 console.log(rateValues); }
容错处理(可选)
如果担心有些review对象可能没有rate属性或者$values字段,为了避免运行时报错,可以用可选链操作符和空值合并运算符做个兜底:
const rateValues = this.key.map(item => item?.rate?.$values ?? null);
这样遇到缺失属性的情况,会用null来填充,不会导致程序崩溃。
内容的提问来源于stack exchange,提问作者user7776077
相关产品推荐
相关产品推荐

