Vue之vue中的data为什么是一个函数?

在vue项目中,vue实例的data是长这个样子的

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

为什么在项目中data需要使用return返回数据呢?
大家知道用组件化来写vue项目,每个.vue文件都是一个个组件。那什么是vue中的组件?
官网写的很易懂——组件就是一个可复用的vue的实例。
这也就意味着如果你的data是一个普通的对象,那么所有复用这个实例的组件都将引用同一份数据,这就造成了数据污染
这个时候如果我们将data封装成一个函数,我们在实例化组件的时候只是调用了这个函数生成的数据副本,这就避免了数据污染。

参考文档:https://www.jianshu.com/p/4f54fa2701a1

猜你喜欢

转载自blog.csdn.net/weixin_40736319/article/details/89381048
今日推荐