将ag-grid列绑定到数组

时间:2016-03-09 18:37:35

标签: ag-grid

我是ag-grid的新手,我正在使用带有angularjs(1.X)的ag-grid。我正在讨论一些问题,非常感谢你的帮助。

在我的场景中,网格中的列数不固定。根据用户输入,网格列及其计数会发生变化。所以,我根据服务器返回的数据动态定义我的列defs(通过ajax调用)。

这就是我的数据的样子。

rowData = [ { "name": "Tom", "Skills": ["JS", "Angular", "PHP" ] } , 
            { "name": "Tim", "Skills": ["C#, "Java", "C++" ] }
          ]

完成动态生成columnDefs后,我的columnDef如下所示:

columnDefs = [ { "headerName": "Name", "field": "name"},
               { "headerName": "Skill1", 
                 "valueGetter": "getSkill", 
                 "colId": 0, 
                 "onCellValueChanged" = skillEdited,
                 "editable": true },
               { "headerName": "Skill2", 
                 "valueGetter": "getSkill", 
                 "colId": 1, 
                 "onCellValueChanged" = skillEdited,
                 "editable": true },
               { "headerName": "Skill3", 
                 "valueGetter": "getSkill", 
                 "colId": 2, 
                 "onCellValueChanged" = skillEdited,
                 "editable": true }
             ]

问题1 : 当我改变网格中的技能时,我的"技术编辑"方法被调用,但params.newValue设置为oldValue,params.oldValue设置为undefined。所以,我基本上没有获得新的价值。当用户更改技能时,我希望更新rowData类。我怎样才能做到这一点?

问题2 :我是否正确绑定了数据和列?还是我做了一些根本错误的事情?

非常感谢您的帮助。  维吉

1 个答案:

答案 0 :(得分:0)

使用newValueHandler而不是onCellValueChanged解决了我的问题......