vue中data为什么要return

首先先看一下下面的代码

var vm = new Vue({
    el: '#example',
     data: {
     message: 'Hello'
     }
});
这种写法data对象是引用类型
//在vue组件中这样写
data() {
     return {
     message: 'Hello'
     }
}
//函数写法,每次返回新对象
  • 1)在简单的Vue实例中,因为你app对象不存在复用,不会出现数据污染。
  • 2)然而在组件中, 使用return包裹后数据中变量只在当前组件中生效,因为组件是可以被复用的,这样不会影响其他组件,所以为了不让多处的组件共享同一个data对象,只能返回函数 ,我们只是调用 了data函数生成的数据副本,避免了数据污染。

 

posted @ 2022-03-03 00:19  程序员小明1024  阅读(302)  评论(0编辑  收藏  举报