为什么vue里的data要用return返回

32次阅读

共计 241 个字符,预计需要花费 1 分钟才能阅读完成。

官网的示例

var vm = new Vue({
  el: '#example',
  data: {message: 'Hello'}
});

项目中的写法

data() {
    return {message: 'Hello'}
  }

为什么要把 data 变成函数并 return 属性呢?
组件是一个可复用的实例,当你引用一个组件的时候,组件里的 data 是一个 普通的对象 ,所有用到这个组件的都 引用的同一个 data,就会造成 数据污染
将 data 封装成函数后,在实例化组件的时候,我们只是 调用了 data 函数生成的数据副本,避免了数据污染。

正文完
 0