vue页面刷新时原有的数据还在吗,vue 数据刷新

  vue页面刷新时原有的数据还在吗,vue 数据刷新

  本文主要介绍了vue数据改变但页面刷新的问题,有很好的参考价值。希望对你有帮助。如有错误或不足之处,请不吝赐教。

  

目录

   vue数据更改,但页面刷新。watch监视数据更改,但页面不刷新。它不监控数据变化。它会更改数据,但不会自动刷新。做个结论。

  

vue数据变化但页面刷新

  

watch监听到数据的变化但页面没有刷新

  加上这个。$forceUpdate()在数据的代码更改后;

  加上这个。$ force update();进行强制渲染,效果实现。因为数据层次太多,渲染函数没有自动更新,需要手动刷新。

  

没有监听到数据的变化

  例如:

  当数组中的一个项或对象中的一个元素发生变化时,监视不会生效。

  要触发数组侦听,下面的方法可以触发。

  如:splice(),push() 等js方法

  当然,你也可以用这个方法。vue中的$set(对象、索引、新)

  这个。$set()方法是vue附带的为数组和对象赋值并触发监听的方法。

  第一个参数是要更改的数组或对象,第二个参数是下标,或者第三个参数元素名是新值。

  

改变了数据却没有自动刷新

  有两个按钮。按钮上有一个数字属性。当值为偶数时,按钮显示为红色。

  初始数据如下:

  a: [{姓名:一 },{姓名:二,号码:2 }]

  现象如下:点击第一个按钮时,数据发生变化,但界面没有相应刷新;这是再次点击第二个按钮,发现第二个按钮是正常的,当第二个按钮被刷新时,第一个按钮也被刷新。

  原因是:a.number=undefined,是一个常数。在渲染第一个按钮的时候,第一个按钮的类并没有绑定到第一个对象的属性号,所以当这个号发生变化的时候,不会触发界面刷新。当第二个按钮导致界面刷新时,第一个

  一个按钮也会刷新界面。Vue。vue中提供了$forceUpdate()方法来强制刷新界面。

  

说下结论

  绑定属性时,不要绑定未定义的属性,否则无法及时触发界面刷新。

  模板

  差异

  span v-for=(x,ind) in a

  :key=ind

  @click=clickSpan(x)

  :class= { red number:x . number % 2==0 }

  {{x.name}}: {{x.number}}

  /span

  /div

  /模板

  脚本

  导出默认值{

  data() {

  返回{

  a: [{姓名:一 },{姓名:二,号码:2 }]

  }

  },

  方法:{

  单击Span(x) {

  如果(!x . number)x . number=0;

  x.number=1

  }

  }

  }

  /脚本

  风格。红色号码{

  颜色:红色;

  }

  * {

  字体大小:20px

  用户选择:无;

  }

  /风格

  以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

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