使用ES6类糖,我们可以这样定义函数:
class Foo {
constructor(props) {}
...
myFn() {}
}
在JS对象文字中,我们可以像这样定义 getters 和 setters :
foo = {
get data() {}
set data(val) {}
}
但是,这种语法是什么:
foo = {
data() {}
}
这是对象数据属性吗?或者是getter / setter?
<子>
注意:此语法在Vue.js 2.0 doc中广泛使用,如新添加的render
函数。
new Vue({
render (h) {
throw new Error('oops')
},
renderError (h, err) {
return h('pre', { style: { color: 'red' }}, err.stack)
}
}).$mount('#app')
答案 0 :(得分:3)
它只是速记。 refer to MDN docs
// Shorthand method names (ES2015)
var o = {
// doesnt need a colon!
property([parameters]) {},
get property() {},
set property(value) {}
};
答案 1 :(得分:2)
foo = {
data() {}
}
是
的简写foo = {
data: function() {}
}