EXTJS存储加载回调问题

b3v*_*abs 7 extjs extjs4.1

我加载我的商店如下:

store.load({
    params: {
        paramMap
    },
    callback: function(records, options, success) {
        if (success) {
            var form = formPanel.getForm();
            var jsonStr = Ext.JSON.encode(records[0].raw);
            var jsonObj = Ext.JSON.decode(jsonStr);
            form.loadRecord(jsonObj);
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

问题是我只希望在第一次加载商店时回拨.我想在之后删除它,以便当我重新加载或再次加载存储时,它不会再次调用此回调.

任何想法,我尝试在选项配置中获取回调但这似乎不起作用.

pll*_*lee 16

不完全确定问题是什么.只有在使用回调加载商店时才会调用回调.

store.load({callback:myCallback});
//callback will be called
store.load();
//callback will not be called
Run Code Online (Sandbox Code Playgroud)

如果你想做一些事情,你可能想要使用一个设置为true的监听器.听众而不是回调是我的首选方式.

store.on('load', onStoreLoad, this, {single:true});
Run Code Online (Sandbox Code Playgroud)

回调函数参数api与加载监听器略有不同,请查看文档以查看.