问题:vue中的data为何一定要是函数?
官方答案:当一个组件被定义,data必须声明为一个返回一个初始数据对象的函数,因为组件可能被用来创建多个实例。如果data仍是一个纯粹的对象,则所有的实例将共享引用同一个数据对象!通过提供data函数,每次创建一个新实例后,我们能够调用data函数,从而返回初始数据的一个全新副本数据对象。
前置知识:
JS浅拷贝、组件复用的实质
问题:vue中的data为何一定要是函数?
官方答案:当一个组件被定义,data必须声明为一个返回一个初始数据对象的函数,因为组件可能被用来创建多个实例。如果data仍是一个纯粹的对象,则所有的实例将共享引用同一个数据对象!通过提供data函数,每次创建一个新实例后,我们能够调用data函数,从而返回初始数据的一个全新副本数据对象。
前置知识:
JS浅拷贝、组件复用的实质