添加/删除记录Ext JS时更新图表

时间:2019-09-20 09:50:34

标签: javascript extjs

ExtJS 7.0现代版 编辑网格单元格时,图表的记录会更改,但添加/删除行时,图表的记录不会更改。 我已经在控制页面中尝试过store.sync(),store.update(),.load(),但这些接缝都无法正常工作。 这是我试图提出逻辑的地方。 (一切正常,可以很好地与图表同步)

showChart: function(btn){
    var chart = Ext.create({
        xtype: 'kleachart'

    }) ;
    chart.show() ;
    console.log("CHART",chart) ;
},

https://fiddle.sencha.com/#view/editor&fiddle/2vh0

先谢谢!

1 个答案:

答案 0 :(得分:0)

问题是商店的多个实例。 当您创建kleachart的新实例(那里还有viewModel实例)时,将创建新的store实例。

showChart: function (btn) {
    var store = this.getView().getStore();
    //model = store.getRecordModel();
    console.log("STORE", store);

    // store = this.getView().getStore().getData();
    // here your logic (see at "reloadStore")
    var chart = Ext.create({
        xtype: 'kleachart',
        title: 'Hello',
        // handler: function (btn) {
        //    store.sync();
        // }

    });

    chart.show();

    console.log("CHART", chart);

}

您可以这样引用旧商店:

showChart: function (btn) {
    var store = this.getView().getStore(),
        parentViewModel = this.getViewModel();
    var chart = Ext.create({
        xtype: 'kleachart',
        title: 'Hello',
        viewModel: new Ext.app.ViewModel({
            stores: {
                klea: store
            }
         })
    });
    chart.show();
},

检查更新的Fiddle