reactjs - 将剑道网格设置数组项反应为列字段
问题描述
我有 products.json 文件,其中所有类别作为对象。如果数据格式在下面的链接中,它工作正常,但如果该 json 中的类别是一个数组,它会失败。我正在尝试使用类别项目数组中的一列创建一个反应网格。
示例: https ://stackblitz.com/edit/react-txwobq?file=app/products.json
它适用于类别块
<Column field="Category.CategoryName" title="CategoryName" />
在具有以下 json 对象的网格代码中
"Category" : {
"CategoryID" : 1,
"CategoryName" : "Beverages",
"Description" : "Soft drinks, coffees, teas, beers, and ales"
}
但是我得到了数组格式的外部api,用于类似的类别
"Category" : [{
"CategoryID" : 1,
"CategoryName" : "Beverages",
"Description" : "Soft drinks, coffees, teas, beers, and ales"
}]
我试着像这样在反应剑道网格中读取这个值,但没有运气。我做错了什么?
<Column field="Category[0].CategoryName" title="CategoryName" />
解决方案
您可以将该列绑定到“类别”字段并定义自定义单元格组件,以呈现数组中的第一项。请检查以下示例:
列定义:
<Column
field="Category"
title="Categories"
cell={CategoryCell}
/>
自定义单元格:
const CategoryCell = (props) => {
const category = props.dataItem[props.field][0];
return <td>{category.CategoryName}</td>;
};
推荐阅读
- javascript - 我应该使用 PHP 来实现 Schema.org 综合评分吗?
- intellij-idea - IntelliJ - 是否可以向控制器类的所有方法添加自定义注释,例如 @SecurityCheck?
- ios - Swift iOS 版本可用性 - 检查从 * 到 iOS 13
- f# - 如何在 F# 中为可区分联合的子集建模?
- javascript - 在对象的嵌套数组中按索引附加数组
- sql - MIN(date) 的查询未在 20 小时内完成:应该是这样,还是我做错了什么?
- asp.net-core - 如何使用 IdentityServer4 从本地数据库对本地用户进行身份验证?
- python - Python - 从列表或字符串中删除一个字符
- oracle - 用户应该属于哪个组才能对 Oracle 云基础设施进行 API 调用?
- oracle - 使用 Powershell 将大输出从 Oracle 导出到 CSV