# Data 的 2 种写法
Vue 的 data 属性有 2 种写法,之前的示例全部使用的是第一种。形如:
data: {
hours: new Date().getHours(),
msg : 'World',
dogs: ['tommy', 'jerry', 'ben']
}
Vue 的 data 属性还有第 2 种写法,要求它是一个返回一个对象的函数。形如:
data: function () {
let obj = {
hours: new Date().getHours(),
msg : 'World',
dogs: ['tommy', 'jerry', 'ben']
};
return obj;
}
通常不会写的这么啰嗦。一般都是简写为:
data () {
return {
hours: new Date().getHours(),
msg : 'World',
dogs: ['tommy', 'jerry', 'ben']
};
}
警告
虽然 data 属性的写法有 2 种,但是
第 1 种的
data: { ... }
对象的写法在未来会出现问题!某些场景中它不适用。第 2 种的
data () { return {...} }
函数的写法则一直有效。
因此,从这里开始,我们将直接 采用第 2 种写法,不再使用第 1 种写法 。