我在init
完成并且表单处于活动状态后调用initComponent
函数。
要测试我是这样设置的:
console.log(this.store);
console.log(this.store.getAt(0));
第一个显示商店 - 商店有数据。 第二个返回undefined。
为什么会这样?如果第一个console.log
显示数据 - 它应该已经可用于第二个。
init: function() {
var rec = this.store.getAt(0);
this.setValues(rec);
this.id = rec.id;
}
答案 0 :(得分:1)
只需等待商店的加载事件,然后再访问它的数据。我猜测控制台很聪明,在对象发生变化时更新内容。
init: function(){
this.store.on('load', function(){
var rec = this.store.getAt(0);
this.setValues(rec);
this.id = rec.id;
}, this);
}