以下是我的MyStore.js
:
Ext.define('MyApp.store.MyStore', {
extend: 'Ext.data.Store',
model: 'MyApp.model.Note',
autoLoad: true,
proxy: {
type: 'ajax',
api: {
/* I want to change the following two filepaths */
read: 'data/notesMar2013.json',
update: 'data/notesMar2013.json'
},
reader: {
type: 'json',
root: 'data',
successProperty: 'success'
}
}
});
我正在尝试通过控制器更改 MyStore 的read
和update
值,api
如下所示:
var notesStore = Ext.getStore('MyStore');
notesStore.on('load',function(notesStore){
var proxy = notesStore.getProxy();
Ext.apply(proxy.api,{
/* Changing the file paths here */
read: 'data/notesApr2013.json',
update: 'data/notesApr2013.json'
})
notesStore.load();
},this,{single:false});
//
console.log(notesStore);
通过使用上述功能,我试图更新 MyStore 但它没有发生。当我在 chrome 控制台中签入时,值已成功更改,但即使我使用了也不会更新或覆盖商店notesStore.load()
。可能是什么问题呢?
我参考了以下链接
答:代码运行良好。让我解释一下我的问题:我在容器上显示商店中的内容,最初,容器中填充了一些内容并且高度是固定的。如果我什至将任何内容添加到容器中,那么它将变得隐藏,因为容器具有固定高度。到目前为止,内容被附加到默认内容,而不是删除默认内容然后添加。那是真正的问题。