Ant Design table React js 在特定条件下点击表格展开一行

2023-12-22

我需要一点帮助。

我需要编写代码,以便表行仅在切换打开时才展开,当切换关闭时,表行不应展开。我已使用该房产expandRowByClick单击时展开行。但这里的问题是,当切换关闭时,它不应该可单击,但现在空行将会展开。我怎样才能避免它?

任何人都可以帮帮我。谢谢。

沙盒链接:https://codesandbox.io/s/purple-sun-1rtz1?file=/index.js https://codesandbox.io/s/purple-sun-1rtz1?file=/index.js


只需粘贴此代码即可。这是工作 。希望这会对您有所帮助。

import React from "react";
import ReactDOM from "react-dom";
import "antd/dist/antd.css";
import "./index.css";
import { Table, Switch } from "antd";

const { Column } = Table;

class EditableTable extends React.Component {
  state = {
    firstRow: false,
    secondrow: false
  };
  constructor(props) {
    super(props);
    this.state = {
      dataSource: [
        {
          key: "0",
          name: "Edward King 0",
          expandable: false
        },
        {
          key: "1",
          name: "Edward King 1",
          expandable: false
        }
      ]
    };
  }
  handleChnage = key => {
    let k = parseInt(key);
    let data = this.state.dataSource;
    let value = data[k].expandable;
    data[k].expandable = !value;
    this.setState({
      dataSource: data
    });
  };

  render() {
    const { dataSource } = this.state;
    return (
      <Table
        bordered
        dataSource={dataSource}
        pagination={false}
        expandRowByClick={true}
        expandable={{
          expandedRowRender: record => (
            <p style={{ margin: 0 }}>{"Here is expandable row"}</p>
          ),
          rowExpandable: record => record.expandable
        }}
      >
        <Column title="name" dataIndex="name" width="30%" editable={true} />
        <Column
          align="right"
          render={(text, record, index) => {
            return <Switch onChange={() => this.handleChnage(record.key)} />;
          }}
        />
      </Table>
    );
  }
}

ReactDOM.render(<EditableTable />, document.getElementById("container"));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ant Design table React js 在特定条件下点击表格展开一行 的相关文章

随机推荐

  • 如何通过我的 Web 应用程序部署 Drools Flow 和规则

    我刚刚开始我的新项目 我的项目经理说 Drools 是新技术 我们将包括 drools 流程和规则 并将我们的 Web 应用程序与其集成 如何将 Drools 流程和规则集成到 Web 应用程序中 这取决于您使用什么技术 例如 如果您使用J
  • Coffeescript --- 如何创建自启动匿名函数?

    如何在咖啡脚本中写这个 f function something 感谢您的任何提示 虽然您可以只使用括号 例如 gt foo 您可以通过使用来避免它们do关键词 do f gt console log this runs right awa
  • PHP - 替换图像中的颜色

    我希望有人能帮帮忙 我制作了一个掩盖图像的脚本 但是它依赖于掩盖的颜色 绿屏 样式 问题是 如果我要遮盖的图像包含该颜色 它就会被破坏 我想做的是在遮盖图像之前 将任何出现的键控颜色 0 0 255 替换为类似的颜色 例如 0 0 254
  • 检查备用信号堆栈(不同的分配方式)

    我正在尝试替代信号堆栈 man sigaltstack 两段代码分配堆栈的方式不同 int method1 void struct sigaction act oldact memset act 0 sizeof act act sa si
  • Newton Soft Json JsonSerializerSettings 用于属性为字节数组的对象

    使用 Newton Json 进行 Json 序列化 当我必须 Json 序列化属性为字节数组的对象 然后以十六进制格式显示字节数组时 要应用什么 JsonSerializerSettings For eg class A public i
  • 错误:启动容器进程导致“exec:\”/docker-entrypoint.sh \“:权限被拒绝”

    我正在尝试构建 docker compose 但收到此错误 错误 对于 indicaaquicombrold mysqld 1 无法启动服务 mysqld oci 运行时错误 container linux go 247 启动容器进程 导致
  • 如何在 Django F 表达式中将日期和时间字段合并为日期时间字段

    我必须得到两个的区别datetime字段 但一个是纯日期时间字段 另一个是日期和时间的组合 我尝试过这个 qs Foo objects filter bar baz id self kwargs baz pk start datetime
  • 两个任务之间的同步

    这实际上是嵌入式系统中固件的设计问题 我有两个独立执行的 ISR 具有相同优先级 当硬件生成数据时 这些 ISR 被触发 我想要一种必须到位的机制来在任务 1 和任务 2 之间进行同步 任务 2 必须知道任务 1 中计算的某些值 然后在计算
  • 获取月份中的第几周 C# [重复]

    这个问题在这里已经有答案了 我想使用 c 桌面应用程序查找现在在周数上的日期 我一直在谷歌上寻找 但没有一个符合我的需求 如下例所示 如何获得一个月中的一周 例子 我想要 2014 年 1 月 6 日 1 月的第一周 2014 年 1 月
  • 在视图控制器 Swift 中的 UITableView 中加载多个 UICollectionView

    我正在构建一个 iOS 应用程序 其中有 4 种不同的 UICollectionViewn 设计 在 UITableView 中 UICollectionViewCell 类名称为 DealCollectionViewCell Filter
  • 如何在 Rmarkdown 中“装箱”“summary()”的输出

    我看过这个帖子 如何在 R 代码块内创建 R markdown 部分 具有正确的代码显示 https stackoverflow com questions 47414027 how to create r markdown section
  • 无法将类型“System.Linq.EnumerableQuery”的对象转换为类型“Microsoft.Azure.Documents.Linq.IDocumentQuery”

    我有一个具有以下方法的类 并使用 Moq 作为单元测试框架 我如何嘲笑以下内容 FeedOptions feedOptions new FeedOptions MaxItemCount 1000 var query await storeA
  • mysql按年分区和按月子分区

    我有一个数据库 其中的日期列的数据类型为日期 该表预计每天有 10k 行 我想在年份范围的表上创建分区 然后在该特定年份的月份上创建子分区 我试过的是 ALTER TABLE nav master PARTITION BY RANGE YE
  • 春萌要链接动画吗?

    我不完全理解Meng To s Spring的文档 https github com MengTo Spring https github com MengTo Spring 给出的可用函数是 animate animateNext ani
  • 匹配两个Python列表的长度

    我有两个不同长度的 Python 列表 人们可能会假设其中一个列表比另一个列表大几倍 两个列表包含相同的物理数据 但以不同的采样率捕获 我的目标是对较大信号进行下采样 使其具有与较小信号完全相同的数据点 我想出了下面的代码 它基本上完成了这
  • iNotify 能否告诉我受监控的文件移动到了哪里?

    我想在文件在系统中移动时对其进行监视 iNotify 可以在它移动时告诉我它的新位置吗 如果您同时查看文件移出的目录和文件移至的目录 那么您将收到IN MOVED FROM源目录上的事件和IN MOVED TO目标目录上的事件 两者具有相同
  • 在 AJAX 中重新初始化 TinyMCE 4

    我在启用 ajax 的情况下使用 TinyMCE基金会揭晓 http foundation zurb com docs components reveal html盒子 现在 TinyMCE 在第一次加载时就会启动 但如果我关闭盒子并再次打
  • Spring data : CrudRepository 的保存方法和更新

    我想知道是否 save 中的方法CrudRepository如果它已经在数据库中找到了条目 则进行更新 例如 Repository public interface ProjectDAO extends CrudRepository
  • 如何阻止 Chrome 自动完成文本区域?

    我正在处理联系表单部分的文本区域 Chrome 希望自动填充用户的地址 因此 许多联系请求是由用户在评论字段中提交其地址的 除了可能被利用的明显的潜在安全问题之外 我担心的是 从用户的角度来看 我们提供的联系表单没有用于键入消息的区域 从支
  • Ant Design table React js 在特定条件下点击表格展开一行

    我需要一点帮助 我需要编写代码 以便表行仅在切换打开时才展开 当切换关闭时 表行不应展开 我已使用该房产expandRowByClick单击时展开行 但这里的问题是 当切换关闭时 它不应该可单击 但现在空行将会展开 我怎样才能避免它 任何人