EXT-JS ui 添加数据到存储后不更新

EXT-JS ui not updating after adding data to store

我正在尝试在项目创建后将其添加到组合框,但商店数据已添加但未在 UI 中更新。

Ext.onReady(function () {

    Ext.create('Ext.data.Store', {
        storeId: 'simpsonsStore',
        autoLoad: true,
        fields: ["name", "value"],


        listeners: {
            load: function(store, rec) {
                store.add([["val1",1],["val2",2]]);
            }
        }
    });

    Ext.create('Ext.form.field.ComboBox', {
        store: Ext.data.StoreManager.lookup('simpsonsStore'),
        valueField: "value",
        displayField: "name",
        renderTo: Ext.getBody()
    });

    var s2 = Ext.getStore('simpsonsStore');
    s2.loadData([["val3",3]],true);
});

首先添加 Val1 和 Val2。渲染后我想添加 val3

我认为 autoload=true 假设没有数据并且正在鞭打 s2.loadData() 首先执行。 这在最新版本中不会发生。

在没有自动加载的情况下手动调用 store.load() 解决了问题。组合框也需要 queryMode='local'

类似工作fiddle:http://jsfiddle.net/tonymayoral/8jzfo7zj/1/

var st=Ext.create('Ext.data.Store', {
        storeId: 'simpsonsStore',
        //autoLoad: true,
        fields: ["name", "value"],

        listeners: {
            load: function(store, rec) {
                store.add([["val1",1],["val2",2]]);
            }
        }
    });

    st.load(); 

    Ext.create('Ext.form.field.ComboBox', {
        store: Ext.data.StoreManager.lookup('simpsonsStore'),
        valueField: "value",
        displayField: "name",
        queryMode:'local', //needs to be local
        renderTo: Ext.getBody()
    });

    var s2 = Ext.getStore('simpsonsStore');
    s2.loadData([["val3",3]],true)