zoukankan      html  css  js  c++  java
  • Vue的一个陷阱

      最近做项目,上线前一直有个bug,不知道是什么原因引起的,

      

    vm.$set('needVerification', true);
    $('.verification-button').prop('disabled', true);
    $('.verification-button').addClass('verification-disab');

        

    needVerification是让一个html元素显示出来的vue实例属性,但后面的两行代码一直没有执行,后来把第一行代码换成jquery的show()方法,就没问题了。
    $('.verification').show();
    $('.verification-button').prop('disabled', true);
    $('.verification-button').addClass('verification-disab');

     怀疑是渲染线程的原因。

     今天看vue官方2.0的文档,在深入响应式原理的一节看到,“你应该注意到 Vue 执行 DOM 更新是异步的,只要观察到数据变化,Vue 就开始一个队列,将同一事件循环内所有的数据变化缓存起来”。 就是这里解释的东西了。官方也给了相应的解决方案:为了在数据变化之后等待 Vue 完成更新 DOM ,可以在数据变化之后立即使用 Vue.nextTick(callback) 。

     这一节文档可以多看几遍。

  • 相关阅读:
    Cookie
    Servlet请求和响应
    Servlet
    Tomcat
    jQuery
    HTTP协议和ajax
    WebApp制作和正则
    BOM对象和json
    视频和音频
    改变文档结构的方法(5种)
  • 原文地址:https://www.cnblogs.com/zhansu/p/6097622.html
Copyright © 2011-2022 走看看