Vue.set怎么删除数组中某一项
Vue.set(cardList,1,'');
Vue.set(cardList,1,false);
Vue.set(cardList,1,null);
根据Vue.set(data,key,value)这种写法,我想删除数组cardList中的某一项要怎么做,用了以上三个值替代 都不能删除,会被直接替换,我希望直接删除这一项该怎么写呢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
首先如果你是想删除数组中的某一项这个需求的话你你可以直接使用
arr.splice(index,1)
splice已经被vue处理过了,可以双向绑定,可见文档.vue
如果你是想验证使用vue中的set实例方法,它并没有错误,set方法是帮我们去改变arr数组原型中的一些输入,比如长度,值等...
你在使用
`Vue.set(cardList,key,'');
Vue.set(cardList,key,false);
Vue.set(cardList,key,null);`
只能达到一个替换的作用.
比如你想替换数组对象第某个对象下中key值为name的值则可这样用
Vue.set(cardList[index],key,value)
如果你是想删除数组对象中某个对象下的某个key值,目前只能是将这个对象删除或者替换成空然后在装载成你需要的值
1、现在数组中删除某一项,然后新的数组替换旧的数组,
2、还有一种就是文档有提供的变异方法https://cn.vuejs.org/v2/guide...
splice(index,len,[item])它也可以用来替换/删除/添加数组内某一个或者几个值(该方法会改变原始数组)
index:数组开始下标
len: 替换/删除的长度
item:替换的值,删除操作的话 item为空
//删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变)
var arr = ['a','b','c','d'];
arr.splice(1,1);
console.log(arr); //['a','c','d'];
试一下
Vue.delete()