为什么对象、数组 需要以一个function 返回
data也是
因为对象、数组都是引用型数据类型。当多个组件new实例的话,就会直接引用同一个data的对象的数据,一个组件数据修改,另一个就会跟着修改。
当data是一个function返回的,就是每一个data都是不一样的存放地址。
官网的解释:
当一个组件被定义,data 必须声明为返回一个初始数据对象的函数,因为组件可能被用来创建多个实例。如果 data 仍然是一个纯粹的对象,则所有的实例将共享引用同一个数据对象!通过提供 data 函数,每次创建一个新实例后,我们能够调用 data 函数,从而返回初始数据的一个全新副本数据对象。