我想在JqGrid中使用已在我的Ember商店中填充的数据。 关于如何以更好的方式实现这一目标的任何提示?
我发现商店中的模型对象与适合JqGrid的javascript对象数组不兼容,所以我不得不创建合适的数组。
这就是我将模型传递给模板中组件的方法:
{{myComponent data=model}}
以下是我如何准备jqGrid数据:
...
export default Ember.Component.extend({
didInsertElement: function(){
var myEmberData = this.get('data');
var myJqGridData = myEmberData.map(item => {
return $.extend({id:item.id},item._internalModel._data);
}
...
//use myEmberData as local data for JqGrid
this.$("#gridId").jqGrid({
datatype: "local",
data: myJqGridData,
...
}
});
答案 0 :(得分:1)
如果您使用.getProperties()
方法并明确指定所需的数据,那么最好不要访问2个私有属性:
const myEmberData = this.get('data');
const myJqGridData = myEmberData.map(
item => item.getProperties('id', 'firstProperty', 'secondProperty') // ... etc.
);