javascript - Vue.js - 如何在函数中使用数组进行循环
问题描述
我想在 Vue.js 函数中使用 JS 数组进行循环。
试过的代码:
视图:
computed: {
bbb: function(){
var vvv=this.Preused.length-this.quote.lines.length;
let added_products=[];
if(vvv > 0){
for(var i = 0; i <= vvv-1; i++){
newly_used.push({...this.Preused[this.manage.code.length+i]});
}
}
return newly_used;
}
}
HTML:
<div v-for="(cc,index) in bbb">
<p v-text="cc[index].num"></p>
</div>
新使用的:
0:
none: "calibry"
des: "Silver"
num: "numty"
通过使用上面的代码,我收到以下错误;
[Vue 警告]:渲染错误:“TypeError:无法读取未定义的属性‘num’”
我该如何解决这个问题?
解决方案
您正在遍历newly_used
从计算属性返回的属性,因此您的 v-for 应该类似于:
<div v-for="(cc,index) in bbb" :key="index">
<p v-text="cc.num"></p>
</div>
或者
<div v-for="(cc,key,index) in bbb" :key="index">
<p v-text="bbb[key].num"></p>
</div>
推荐阅读
- python - 登录名和密码变量
- sql - 值数组 ILIKE 某个值
- java - 在 java 中使用 API 创建 GitHub 分支
- python-3.x - 如何通过 AWS CDK 将基于资源的策略添加到使用 AWS SAM 创建的 Lambda 函数?
- python - 每当在 VSCode/Python 中遇到断点时运行代码
- python - 从两个不同的数据框中查找唯一的列值
- javascript - 根据有多少改变视频元素的大小
- sql - SUB 特殊字符需要从 Teradata 的列中删除
- sql - 为传递给存储过程的逗号分隔值列表中的每个值插入新行
- java - 在 Micronaut 中使用 MockBean 和 Lambda 应用程序的 lambda 运行时