当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Vue.js data用法及代码示例


返回组件实例的初始反应状态的函数。

类型

interface ComponentOptions {
  data?(
    this: ComponentPublicInstance,
    vm: ComponentPublicInstance
  ): object
}

细节

该函数预计将返回一个普通的 JavaScript 对象,该对象将由 Vue.js 进行响应。创建实例后,可以通过 this.$data 访问原始数据对象。组件实例还代理在数据对象上找到的所有属性,因此 this.a 将等效于 this.$data.a

一旦观察到,您就不能再将反应属性添加到根数据对象。因此,建议在创建实例之前预先声明所有root-level 反应属性。

开头的属性_或者$将要不是在组件实例上代理,因为它们可能与 Vue 的内部属性和 API 方法冲突。您必须以this.$data._property.

不建议返回具有自己有状态行为的对象,例如浏览器 API 对象和原型属性。理想情况下,返回的对象应该是一个仅表示组件状态的普通对象。

示例

export default {
  data() {
    return { a: 1 }
  },
  created() {
    console.log(this.a) // 1
    console.log(this.$data) // { a: 1 }
  }
}

请注意,如果您使用带有data 属性的箭头函数,this 将不是组件的实例,但您仍然可以将实例作为函数的第一个参数来访问:

data: (vm) => ({ a: vm.myProp })

相关用法


注:本文由纯净天空筛选整理自vuejs.org大神的英文原创作品 data。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。