向网格添加新对象

Adding new object to grid

我正在尝试向 extjs 6 经典工具包中的现有网格添加新记录。

我会在下面粘贴我的代码,但首先要解释问题是什么。 我使用 getCmp 和 getStore 来获取将要使用的网格和存储。 使用 Ext.ComponentQuery.query 我从要添加到网格的表单中的每个字段中获取值。

console.log(values) 显示值

这是我目前的情况:

getValuesForSave : function() {

    var grid = Ext.getCmp('cataloguegrid');
    var store = Ext.getStore('cataloguegridstore'); 
    var model = store.model.create({});

    var form = Ext.ComponentQuery.query("#basicDataPanel")[1];  
    var values = form.getValues();

    console.log(values);
    grid.getStore(model).insert(0, values);  

    Ext.MessageBox.show({
        title : 'Saving data!',
        msg : 'Data successfully saved!',
        buttons : Ext.MessageBox.OK,
        icon : Ext.Msg.INFO
    });     
},

我没有收到任何错误,并且新行被添加到网格中,但是该行是空的,它不包含任何数据。 我需要进行哪些更改才能将对象添加到网格?

成功了。我的问题是我没有将表单视图中的 "name" 设置为与表单模型中项目的 "name" 相同。将其更改为匹配并且有效。

getValuesForSave : function() {

var grid = Ext.getCmp('cataloguegrid');

var form = Ext.ComponentQuery.query("#basicDataPanel")[1];  
var values = form.getValues();

console.log(values);

grid.getStore().insert(0, values);   

Ext.MessageBox.show({
    title : 'Saving data!',
    msg : 'Data successfully saved!',
    buttons : Ext.MessageBox.OK,
    icon : Ext.Msg.INFO
});         
},