vue对象数组不刷新,vue数组对象赋值,页面不变
本文主要介绍vue绑定对象,数组数据无法动态渲染的情况的详细说明。本文通过一个简单的案例来说明对这项技术的理解和使用。以下是详细内容,有需要的朋友可以参考一下。
项目场景:
黑马vue项目管理练习,获取商品分类,在扩展栏的标签页修改数据属性。
问题描述:
当您应该单击new tag选项卡时,会弹出一个输入框供用户输入要添加的属性。
单击时无法立即呈现结果。
异步getParametersList() {
this . cat _ id=this . current select[this . current select . length-1];
const { data: res }=等待此消息。$http.get(
` categories/$ { this . cat _ id }/attributes `,
{
params: { sel: many }
}
);
this . paramasdata=RES . data;
res.data.forEach(item={
item.attr_vals=item.attr_vals?item . attr _ vals . split():[];
//控制文本框的显示和隐藏
item.inputVisible=false
//文本框中输入的值
item.inputValue=
console.log(项目)
});
console . log(this . paramasdata);
},
//单击按钮显示对话框
//单击按钮显示文本输入框。
showInput(row) {
row.inputVisible=true
//让文本框自动获得焦点
//$仅在页面上的元素重新呈现后,使用next tick方法指定回调函数中的代码。
//这个。$nextTick((_)={
//这个。$ refs . savetaginput . $ refs . input . focus()
//})
},
原因分析:
参考这篇文章。
https://www.jb51.net/article/222379.htm
原来我在得到参数表后立即双向绑定了值,然后给每一列对象添加了inputvisible控件属性,导致点击按钮时每个对象的inputVisible无法用输入框中的v-if实时渲染。
双向绑定后,添加数组中对象的属性值。vue没有办法为数组中的后续对象绑定getter和setter函数,所以没有办法得到实时渲染。
解决方案:
修改数据后,为数据中的数据赋值。
也就是
异步getParametersList() {
this . cat _ id=this . current select[this . current select . length-1];
const { data: res }=等待此消息。$http.get(
` categories/$ { this . cat _ id }/attributes `,
{
params: { sel: many }
}
);
res.data.forEach(item={
item.attr_vals=item.attr_vals?item . attr _ vals . split():[];
//控制文本框的显示和隐藏
item.inputVisible=false
//文本框中输入的值
item.inputValue=
console.log(项目)
});
this . paramasdata=RES . data;
console . log(this . paramasdata);
},
这就是本文对vue绑定对象和数组数据无法动态呈现的详细解释。更多相关的vue绑定对象和无法动态渲染的数组数据,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。