2017.11.18git操作/vm.$nextTick

git操作

在vue中操作节点的话,应该放在mounted生命周期中,因为mounted是DOM渲染结束后执行
http://blog.csdn.net/Wbiokr/article/details/77799291

vm.$nextTick()

但是今天遇到一个场景,就是请求是在created中异步请求数据的,而在mounted中操作DOM,确拿不到这个DOM,原因很简单:因为请求是异步的,执行到 mounted的时候,数据还没返回,所以根本也就没有DOM可以拿到。

解决的方法:
使用$nextTick
vm.$nextTick([callback])

用法:
将回调延迟到下次DOM循环更新之后执行。在修改数据之后立即使用它,然后等待DOM更新。它跟全局的Vue.nextTick一样,不同的是回调的this自动绑定到调用它的实例上。

示例:

new Vue({
  // ...
  methods: {
    // ...
    example: function () {
      // 修改数据
      this.message = 'changed'
      // DOM 还没有更新
      this.$nextTick(function () {
        // DOM 现在更新了
        // `this` 绑定到当前实例
        this.doSomethingElse()
      })
    }
  }
})

filter没有改变原数组

你可能感兴趣的:(2017.11.18git操作/vm.$nextTick)