今天我遇到了关于Ext.js静态属性的问题
我尝试使用一些静态值初始化模型字段,但它会抛出一个错误,该模型是 undefined 。据我所知,这个问题与对象生命周期(对象如何创建)有关,但不知道如何修复它。
Ext.define('app.model.base.Ticket', {
extend: 'Ext.data.Model',
statics: {
SOME_STATIC_VALUE: '1231231'
},
fields: [
{
name: 'requesterName',
defaultValue: app.model.base.Ticket.SOME_STATIC_VALUE
}
]
});
错误:
Uncaught TypeError: Cannot read property 'SOME_STATIC_VALUE' of undefined
有没有人解决这个问题?
答案 0 :(得分:0)
你可以这样做:
Ext.define('app.model.base.Ticket', (function() {
var foo = '1231231';
return {
extend: 'Ext.data.Model',
statics: {
SOME_STATIC_VALUE: foo
},
fields: [
{
name: 'requesterName',
defaultValue: foo
}
]
};
})()
);