reactjs - React kendo grid将数组项设置为列字段

标签 reactjs kendo-ui kendo-grid kendo-react-ui

我有 products.json 文件,其中所有类别都作为对象。如果数据格式在下面的链接中,它可以正常工作,但如果该 json 中的类别是数组,则它会失败。我正在尝试使用类别项数组中的一列创建一个 react 网格。

示例: https://stackblitz.com/edit/react-txwobq?file=app/products.json

它与类别 block 一起工作正常

<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"
}]

我尝试像这样在 react 剑道网格中读取这个值,但没有运气。我犯了什么错误?

<Column field="Category[0].CategoryName" title="CategoryName" />

最佳答案

您可以将该列绑定(bind)到“类别”字段,并定义用于呈现数组中第一项的自定义单元格组件。请检查下面的示例:

列定义:

  <Column
    field="Category"
    title="Categories"
    cell={CategoryCell} 
  />

自定义单元格:

const CategoryCell = (props) => {
   const category = props.dataItem[props.field][0];

   return <td>{category.CategoryName}</td>;
};

关于reactjs - React kendo grid将数组项设置为列字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55252407/

相关文章:

kendo-ui - Kendo UI 数据源同步按钮

javascript - Telerik Kendo UI 网格在保留(和恢复)其状态后丢失自定义命令事件处理程序

javascript - 如何在 React 中的切换开关组件内添加文本?

javascript - Kendo UI (jquery) 模板在属性名称位于字符串中时获取值

javascript - React组件如何简化这个onClick功能?

css - kendo ui Angular 拆分面板更改背景颜色

javascript - 如何在 Kendo UI 网格中比较一行两列中的日期?

javascript - 在第二列中的自动完成中获取第一列中的 ID

reactjs - Material-ui Card 组件的阴影和底部在 GridList 内时被剪裁

node.js - Webpack react 错误 : Module parse failed: Unexpected token