在vue组件中data的属性值是函数,如下所示
export default {
data() {
// data是一个函数,data: function() {}的简写
return...页面要初始化的数据
name: 'itclanCoder',
};
},
};
而非:如下所示
export default {
data: {
// data是一个对象...,则所有的实例将共享引用同一份data数据对象,无论在哪个组件实例中修改data,都会影响到所有的组件实例
如果data是函数,每次创建一个新实例后,调用data函数,从而返回初始数据的一个全新副本数据对象...;
p1.data.name = '川川';
console.log(p1.data.name); // 川川
console.log(p1.data.name); // 川川
挂载在原型下属性如果是一个对象...,实例化出来的对象(p1,p2)都指向的是同一份实体
原型下的属性相当于是公有的
修改一个实例对象下的属性,也会造成另一个实例属性跟着改变,这样在组件复用的时候,肯定是不行的,那么改成函数就可以了的,如下代码所示