vue set改变数组,vue中数组动态赋值
本文主要介绍了vue $set如何给数组集合对象赋值,有很好的参考价值,希望对大家有所帮助。如有错误或不足之处,请不吝赐教。
vue $set 数组集合对象赋值
在vue自定义数组对象集合中,您希望为每个数组对对象添加另一个属性和值。
//数据定义一个集合对象。
responseData:[
{id:1 ,名称:女装,价格:115,数量:1,图片:./static/img/1.jpg},
{id:2 ,名称:男装,价格:110,数量:1,图片:./static/img/2.jpg},
{id:3 ,名称:童装,价格:118,数量:2,图片:./static/img/3.jpg}
],
//vue方法请求返回集合对象数据。
if(res.data.code===ok){
that . totals=RES . data . data . total;
that . question list=RES . data . data . list;
}
//赋值操作
for(让问题列表赋值){
//此处强调
帽子。$set(val, discussAnswer , 0 );
}
Vue this.$set的用法
解决修改后数组和对象不更新的问题。
一、this.$set实现什么功能,为什么要用它?
当您发现您已经向一个对象添加了一个属性,该属性可以在控制台上打印出来,但是它还没有在视图上更新,您可能需要使用这个。$set()方法。简单来说,这个的功能。$set就是为了解决这个问题。
官方解释:给响应式对象添加一个属性,确保这个新属性也是响应式的,并触发视图更新。必须用来给响应对象添加新属性,因为Vue无法检测普通的新属性(比如this.myObject.newProperty=hi )。
二、怎么用它?
例如:
1.1编写的代码。模板中的Vue:
div v-for=(item,index) in list :key=index
{{item.name}}
/div
button @ click= change value type= primary 更改值/button
/div
2.导出默认值{}中的数据数据
data(){
返回{
列表:[
{姓名: 29Kun ,id:1},
{名称: 299Kun ,id:2},
]
}
}
3.单击按钮触发changeValue方法。
已安装(){
this.list[2]={name:2999Kun ,id:3}
console . log(this . list[0]);
},
方法:{
changeValue(){
这个。$set(this.list,2,{name:2999kun ,id:3})
}
}
方法:这个。$set(目标,键,值)
目标:要更改的数据源(可以是对象,也可以是数组)。
关键:要更改的具体数据
值:重新分配的值
4.不点击按钮时,界面看起来是这样的。虽然没有显示界面,但是控制台已经打印出来了。
5.当单击按钮时,此。调用$set方法成功显示第三个属性。
以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。