Sencha touch 从localStorage获取要在Sencha Touch AJAX代理中使用的值
在我的Sencha Touch应用程序中,我将一些值存储在localStorage中,它们存储得很好。稍后,我需要将这些值用于对存储的请求,并且需要将这些值作为请求头传递。代码如下所示:Sencha touch 从localStorage获取要在Sencha Touch AJAX代理中使用的值,sencha-touch,sencha-touch-2,Sencha Touch,Sencha Touch 2,在我的Sencha Touch应用程序中,我将一些值存储在localStorage中,它们存储得很好。稍后,我需要将这些值用于对存储的请求,并且需要将这些值作为请求头传递。代码如下所示: Ext.define('AppName.store.storeName', { extend: 'Ext.data.Store', requires: [ 'AppName.model.modelName' ], config: { model
Ext.define('AppName.store.storeName', {
extend: 'Ext.data.Store',
requires: [
'AppName.model.modelName'
],
config: {
model: 'AppName.model.modelName',
storeId: 'storeName',
proxy: {
type: 'ajax',
url: 'http://dynamic',
headers: {
auth_token: localStorage.getItem('activeUserToken'),
user_email: localStorage.getItem('userEMail')
},
reader: {
type: 'json'
}
}
}
});
然而,当我在Chrome开发者工具中清楚地看到这些值时,auth_令牌和user_电子邮件值都被返回为“未定义”。除此之外,我在Sencha Touch应用程序的许多其他地方都可以访问这些值,但在商店本身无法访问
谁能告诉我我做错了什么
谢谢我用以下方法解决了这个问题。在加载存储之前,我不是在存储中传递头,而是在请求期间传递头。下面是代码:
Ext.getStore('storeName').getProxy().setUrl(someURL);
Ext.getStore('storeName').getProxy().setHeaders(
{
"auth_token" : activeUserToken,
"user_email" : userEmail
}
);
Ext.getStore('storeName').load();