Vue data对象隔离问题
vue 中组件经常会遇到复用的情况,这时就要注意,vue 组件中的 data 数据应当相互隔离,互不影响,组件每复用一次,都有一个私有的数据空间,可以维护自己的数据。
当我们组件的data写成了对象形式,这些实例用的是同一个构造函数,将导致所有的组件实例共用了一个 data ,就会造成一个变了全都会变的结果。
因此我们正确的做法是利用javascript的闭包的概念,使用一个函数来返回对应的数据:
var MyComponent = Vue.extend({ data: function () { return { a: 1 } } })
未完,待续......