vue对象数组不刷新,vue数组对象赋值,页面不变

  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的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: