在vue组件中data的属性值是函数,如下所示
export default {
data() {
// data是一个函数,data: function() {}的简写
return...如下所示
export default {
data: {
// data是一个对象
name: 'itclanCoder',
},
};
当一个组件被定义,data必须声明为返回一个初始数据对象的函数...也就是说,在很多页面中,定义的组件可以复用在多个页面
如果data是一个纯碎的对象,则所有的实例将共享引用同一份data数据对象,无论在哪个组件实例中修改data,都会影响到所有的组件实例
如果data是函数...,每次创建一个新实例后,调用data函数,从而返回初始数据的一个全新副本数据对象
这样每复用一次组件,会返回一份新的data数据,类似于给每个组件实例创建一个私有的数据空间,让各个组件的实例各自独立,互不影响...,保持低耦合
可以看下面一段代码
// 声明构造器函数
function Person() {}
Person.prototype.data = {
// 原型下挂载一对象,并有name属性