Ag-grid 不显示嵌套 json
Ag-grid not display nested json
我有json。我想将它渲染到 ag-grid。所有字段都正常工作,但我无法呈现 possible_positions
项。我做错了什么?
[
{
"id": 1,
"surname": "Иванов",
"stop_sheet_status_id": 1,
"status_treatment": {
"id": 1,
"display_name": "active",
"created_at": "2017-09-08T06:50:19.043Z",
"updated_at": "2017-09-08T06:50:19.043Z"
},
"nationality": {
"id": 1,
"display_name": "nationality",
"created_at": "2017-09-08T06:50:16.441Z",
"updated_at": "2017-09-08T06:50:16.441Z"
},
"possible_positions": [
{
"id": 1,
"display_name": "programmer",
"created_at": "2017-09-08T06:50:17.883Z",
"updated_at": "2017-09-08T06:50:17.883Z"
},
{
"id": 2,
"display_name": "engineer",
"created_at": "2017-09-08T06:50:17.964Z",
"updated_at": "2017-09-08T06:50:17.964Z"
},
{
"id": 3,
"display_name": "worker",
"created_at": "2017-09-08T06:50:18.053Z",
"updated_at": "2017-09-08T06:50:18.053Z"
}
]
}
]
example.js
{
headerName: "treatment date", field: "treatment_date",
width: 100, pinned: true
},
{
headerName: "nat display ", field: "nationality.display_name",
width: 180, pinned: true
},
{
headerName: "position", field:
"possible_positions[0].display_name",
width: 180, pinned: true
}...
您需要为该列定义 value getter。获取值的默认方法假定数据仅在嵌套对象中,而不是数组中。这就是为什么 nationality.display_name
适用于列 nat display
.
这就是定义 valueGetter 的方式
{
headerName: "position",
valueGetter: params => params.data.possible_positions[0].display_name,
width: 180, pinned: true
}
实际上,查看源代码,您可能能够摆脱这个:
{
headerName: "position", field:
"possible_positions.0.display_name",
width: 180, pinned: true
}
由于源在 .
上拆分了提供的字段名称,然后使用括号表示法递归地挖掘对象。
我有json。我想将它渲染到 ag-grid。所有字段都正常工作,但我无法呈现 possible_positions
项。我做错了什么?
[
{
"id": 1,
"surname": "Иванов",
"stop_sheet_status_id": 1,
"status_treatment": {
"id": 1,
"display_name": "active",
"created_at": "2017-09-08T06:50:19.043Z",
"updated_at": "2017-09-08T06:50:19.043Z"
},
"nationality": {
"id": 1,
"display_name": "nationality",
"created_at": "2017-09-08T06:50:16.441Z",
"updated_at": "2017-09-08T06:50:16.441Z"
},
"possible_positions": [
{
"id": 1,
"display_name": "programmer",
"created_at": "2017-09-08T06:50:17.883Z",
"updated_at": "2017-09-08T06:50:17.883Z"
},
{
"id": 2,
"display_name": "engineer",
"created_at": "2017-09-08T06:50:17.964Z",
"updated_at": "2017-09-08T06:50:17.964Z"
},
{
"id": 3,
"display_name": "worker",
"created_at": "2017-09-08T06:50:18.053Z",
"updated_at": "2017-09-08T06:50:18.053Z"
}
]
}
]
example.js
{
headerName: "treatment date", field: "treatment_date",
width: 100, pinned: true
},
{
headerName: "nat display ", field: "nationality.display_name",
width: 180, pinned: true
},
{
headerName: "position", field:
"possible_positions[0].display_name",
width: 180, pinned: true
}...
您需要为该列定义 value getter。获取值的默认方法假定数据仅在嵌套对象中,而不是数组中。这就是为什么 nationality.display_name
适用于列 nat display
.
这就是定义 valueGetter 的方式
{
headerName: "position",
valueGetter: params => params.data.possible_positions[0].display_name,
width: 180, pinned: true
}
实际上,查看源代码,您可能能够摆脱这个:
{
headerName: "position", field:
"possible_positions.0.display_name",
width: 180, pinned: true
}
由于源在 .
上拆分了提供的字段名称,然后使用括号表示法递归地挖掘对象。