vue

一: vue的核心是允许采用简洁的模板语法来声式地将数据渲染进DOM的系统;
二:每个vue应用都是通过vue函数创建一个 新的vue实例开始的;当创建一个vue实例时,可以传入一个选项对象,来创建想要的行为。

  1. data
    类型:Object|Function
    限制: 组件的定义只接受function。
    详细:
    1、 Vue 实例的数据对象。Vue 将会递归将 data 的 property 转换为 getter/setter,从而让 data 的 property 能够响应数据变化。对象必须是纯粹的对象 (含有零个或多个的 key/value 对):浏览器 API 创建的原生对象,原型上的 property 会被忽略。大概来说,data 应该只能是数据 - 不推荐观察拥有状态行为的对象。
    2、一旦观察过,就无法在根数据对象上添加响应式property。因此推荐在创建实例之前,就声明所有的根级响应式property;可以使用 Vue.set(object, propertyName, value) 方法向嵌套对象添加响应式 propertyVue.set(vm.someObject, 'b', 2)详情看这里
    3、实例创建之后,可以通过 vm.data.a;
    4、以 _ 或 data._property 的方式访问这些 property;
    5、当一个组件被定义,data 必须声明为返回一个初始数据对象的函数,因为组件可能被用来创建多个实例。如果 data 仍然是一个纯粹的对象,则所有的实例将共享引用同一个数据对象!通过提供 data 函数,每次创建一个新实例后,我们能够调用 data 函数,从而返回初始数据的一个全新副本数据对象。
    6、如果需要,可以通过将 vm.$data 传入 JSON.parse(JSON.stringify(...)) 得到深拷贝的原始数据对象。
    7、注意,如果你为 data property 使用了箭头函数,则 this 不会指向这个组件的实例,不过你仍然可以将其实例作为函数的第一个参数来访问data: vm => ({ a: vm.myProp })

你可能感兴趣的:(vue)