我正在尝试设置localStorage以保存从我的REST服务收到的身份验证令牌,但不幸的是我不断收到与该商店相关的功能不存在的错误:
TypeError:Ext.getStore不是函数
var test = Ext.getStore('myPhysioStorage');
我的实施:
存储/ UserStore.js
Ext.define('Physio.model.UserStore'), {
extend: 'Ext.data.Model',
config: {
fields: [
'sessiontoken'
]
}
});
模型/ UserStore.js
Ext.define('Physio.store.UserStore'), {
extend: 'Ext.data.Store',
requires: 'Physio.model.UserStore',
config: {
model: 'Physio.model.UserStore',
autoload: true,
storeId: 'myPhysioStorage',
proxy: {
type: 'localStorage',
id: 'myPhysioStorageProxy'
}
}
});
控制器/ Login.js
...
launch: function() {
var test = Ext.getStore('myPhysioStorage');
console.log(userStore);
}
...
app.js
Ext.application({
name: 'Physio',
views: ['Login','MainMenu'],
controllers:['Login','MainMenu'],
store:['UserStore'],
model:['UserStore'],
launch: function () {
Ext.Viewport.add([
{ xtype: 'loginview' },
{ xtype: 'mainmenuview' }
]);
}
});
答案 0 :(得分:1)
您是否在html页面中添加了app.js
和sencha touch lib sencha-touch.js
?
<script type="text/javascript" src="lib/sencha-touch/sencha-touch.js"></script>
<script type="text/javascript" src="app/app.js"></script>
您是否还在Ext.data.Store
?
Ext.application
Ext.application({
name: 'name',
requires: [
'Ext.data.Store', 'some more'
],
....
});