这是一些UI代码,我试图为智能组件传递的数据设置一些默认值:
Template.selector.onCreated(function() {
const template = this,
data = this.data;
_.defaults(data, {
inputValue: new ReactiveVar(),
showDropOnFocus: true,
showDropOnDblClick: true
})
const drop = template.drop = {
shown: new ReactiveVar()
};
const input = template.input = {
hasFocus: new ReactiveVar(),
hasValue: new ReactiveVar(),
wasDblClicked: new ReactiveVar()
};
...
})
但对我来说,在数据上下文中存储一些组件变量,而在模板实例中存储其他组件变量时,我感到非常明确。
所以,这是一种正确的方式:
答案 0 :(得分:0)
正如您所指出的那样,data
上下文不应该被修改。在模板实例本身中存储任何反应变量的常见做法。通常,onCreated
是最佳选择。