美文网首页
VUE里各种数据刷新了但是视图没变的情况

VUE里各种数据刷新了但是视图没变的情况

作者: zergNeptune | 来源:发表于2019-01-21 20:26 被阅读0次

    问题:

    1.界面文本或者输入框,后台传来了数据,但是页面有改变。(这里包含一种常见的情况:1.随便改变一个别的输入框的值,或者下拉一下菜单,数据又有了。)

    2.下拉框,默认值不生效、后台传值不生效。

    可能的解决方法:

    1.值类型可能不对应。比如下拉框,几个候选option的类型是string,但是后台传来的是number。这时候可以把v-model给个v-bind(:v-model),或者把number+''改变为string。

    2.this.$set(目标所属data, 'key', 待传入的值)

    3.VUE不能动态检测到新增或删除的值。如果初始化的数据里没有这个property,那后台传过来的时候不会第一时间检测到。比如一个输入框的值取自this.data,其值created为:data:{}。这时候如果后台传来this.data.name="123",因为是新增property,不会第一时间检测到。这时候可以先声明property并且给个空值,比如created为:data:{name:""}。这时候再赋值就能动态改变了。

    4.this.$nextTick(()=> {......},用这个方法,在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。

    相关文章

      网友评论

          本文标题:VUE里各种数据刷新了但是视图没变的情况

          本文链接:https://www.haomeiwen.com/subject/thyhjqtx.html