reactjs - 如何在React mui-Datatable中完成customRender

标签 reactjs datatable mui-datatable

我想自定义 mui-datatble 中的行帽数据,如果我在选项中选择"is",则背景颜色应为红色,如果我选择“否”,则背景颜色应为蓝色。我第一次使用 mui-datatable。

我无法使用customRowRender 或customRender。我们如何在 mui-datatable 中使用它

import React from 'react';
import MUIDataTable from "mui-datatables";

class Datatable extends React.Component {
    render() {
        const columns = [
            {
             name: "name",
             label: "Name",
             options: {
              filter: true,
              sort: true,
              customRowRender:(data, dataIndex, rowIndex) => {
                console.log('data' + data);
                return (
                  <div>
                    {data}{' '}{dataIndex}{' '}{rowIndex}
                  </div>
                );
              }
             }
            },
            {
             name: "company",
             label: "Company",
             options: {
              filter: true,
              sort: false,
             }
            }
           ];

           const data = [
            { name: "Joe James", company: "Test Corp" },
            { name: "John Walsh", company: "Test Corp" }
           ];

           const options = {
             filterType: 'checkbox',
           };
        return (
            <React.Fragment>
<MUIDataTable
  title={"Employee List"}
  data={data}
  columns={columns}
  options={options}
/>
            </React.Fragment>
            );
   }}
export default Datatable;

I should be able to render data in customRender where I will add a conditional render with a <div> and style depending on Yes/No

最佳答案

根据 doc,您已将 customRowRender 属性放入 columns 对象中。它应该位于 options 对象中:

   const options = {
             filterType: 'checkbox',
             customRowRender:(data, dataIndex, rowIndex) => {
                console.log('data' + data);
                return (
                  <div>
                    {data}{' '}{dataIndex}{' '}{rowIndex}
                  </div>
                );
              }
    };

    // render
    <MUIDataTable
      title={"Employee List"}
      data={data}
      columns={columns}
      options={options}
    />

但是这是为了渲染自定义行,如果您想渲染自定义列,那么您可以使用 columns 对象中的 customBodyRender 属性。

关于reactjs - 如何在React mui-Datatable中完成customRender,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56305442/

相关文章:

reactjs - Mui-Datatables 函数中的 tableState 导致无限循环

jsf - 如何选择<h :dataTable> with <h:selectBooleanCheckbox>的多行

javascript - 更改/添加 index.js 的 create-react-app 入口点或位置

onclick - 如何在React子组件中设置事件处理程序

javascript - react native android native 模块 promise 不会解决或拒绝

javascript - 隐藏在 jquery 数据表中的服务器端处理中无法正常工作的列

javascript - 仅选择 md-data-table 中的一行

javascript - 如何在可扩展行内传递来自 firestore 的文本数据并获取要在 setState 内传递的文档 ID?

reactjs - 在 Mui-Datatables 中上传 CSV 文件

javascript - 无法读取未定义的属性 'state'