ag网格没有显示嵌套的json
ag-grid not showing nested json
我对ag网格有问题。我试着用ag网格绑定我的数据。因此,当我在系统中输入新成绩时,我会将ag网格扩展一列:
var newGrade = {headerName: "Grade", field: 'grades[' + indexOfNewGrade + '].value'};
this.$scope.columnDefs.push(newGrade);
this.$scope.gridOptions.api.setColumnDefs(this.$scope.columnDefs);
this.$scope.gridOptions.api.setRowData(this.selectedEventLog.getEntries());
我100%确信,例如:当我在ag网格中没有看到这个值时,this.selectedEventLog.getEntries()[0].grades[0].value
返回1。另一方面,当我编写'grades['+indexOfNewGrade']'
时,它运行良好,但它绑定到整个对象,而不是"value"属性。等级对象:
export class Grade {
constructor(value) {
this.value = value;
}
}
不确定求值是否支持数组求值。
相反,您应该使用一个值获取器:
function buildValueGetter(index){
return function(params){
return params.data.grades[index].value;
}
}
var newGrade = {headerName: "Grade", id: 'grades-'+indexOfNewGrade,
valueGetter:buildValueGetter(indexOfNewGrade)};
关于valueGetter的相关文件:https://www.ag-grid.com/javascript-grid-value-getters/index.php
为什么要将其作为字符串输入?我似乎无法理解你在做什么。我只想做field: grades[indexOfGrade].value.toString()
。请注意缺少'
,因为您实际上想要获得存储在数组grades
内的indexOfGrade
中的特定Grade
的值。之后,您获得value
属性,并且只有在之后,您才将其设为字符串。
更新
我想我明白你想做的了。你想用值获取器表达式吗?
如果是这样的话,你的代码应该是这样的:
{
headerName: "Grade",
field: 'newGrade' + indexOfNewGrade.toString(),
valueGetter: 'data[' + indexOfNewGrade.toString() + '].value'
}
相关文章:
- 访问嵌套JSON对象的键,其中键是动态的
- 从多维嵌套json数组创建下拉列表
- 带嵌套json的下划线js查找
- 返回嵌套JSON中包含特定键的所有值
- 嵌套JSON到平面HTML表
- 原型Ajax请求参数为嵌套json
- 从对象数组中动态创建嵌套json
- ExtJS 4.1-检索嵌套JSON的hasOne信息
- 更新嵌套json Angularjs中的对象
- 访问嵌套 json 对象的属性将返回未定义
- 如何解析没有键的嵌套json's的javascript
- 显示嵌套json集合的主干
- 列表中呈现的骨干嵌套json对象
- 如何使用promise来反规范化嵌套json
- 正在读取嵌套json,jquery返回undefined
- Ionic/Angular:如何在嵌套json中导航
- 如何访问AngularJs中的嵌套Json对象
- 使用Javascript查找并更新嵌套JSON数组和对象中的所有键值
- 如何获取给定表单详细信息的嵌套json对象
- 通过Javascript中的递归迭代映射嵌套JSON