logo

S2

  • 使用文档
  • API 文档
  • 图表示例
  • 在线体验
  • 更新日志
  • 所有产品antv logo arrow
  • 2.x
  • 简介
  • 快速上手
  • 基础教程
    • 基本概念
      Updated
    • 表形态
      • 透视表
        Updated
      • 明细表
        Updated
    • 字段标记
      Updated
    • 小计总计
    • 排序
      • 基础排序
        Updated
      • 组内排序
        Updated
    • 主题配置
      Updated
    • Tooltip
      Updated
    • 数据格式化
      New
    • 多行文本
      New
    • 国际化
    • 分页
      New
  • 进阶教程
    • 单元格渲染类型
      • 链接
      • 图片
        New
      • 视频
        New
      • 迷你图表
      • 结合@antv/g2
      • 自定义渲染
    • 自定义
      • 自定义 Hook
        Updated
      • 自定义行列头分组
        New
      • 自定义 Icon
        Updated
      • 自定义单元格对齐方式
        Updated
      • 自定义单元格宽高
        Updated
      • 自定义排序操作
        Updated
      • 自定义折叠/展开节点
        New
    • 交互
      • 基础交互
        Updated
      • 自定义交互
      • 隐藏列头
        Updated
      • 行列宽高调整
        Updated
      • 合并单元格
      • 滚动
        Updated
      • 复制与导出
        New
      • 高亮/选中单元格
        New
    • 分析组件
      • 简介
        New
      • 高级排序
        Updated
      • 维度切换
        Updated
      • 导出
        Updated
      • 分页
        Updated
      • 维度下钻
        Updated
    • 表格组件
      • 编辑表
      • 趋势分析表
        Updated
    • 高清适配
      Updated
    • 获取表格实例
    • 表格自适应
    • 获取单元格数据
      Updated
    • 注册 AntV/G 插件
      New
    • 透视组合图
      Experimental
    • Vue 3.0 组件 (停止维护)
  • 扩展阅读
    • 数据流处理
      • 透视表
      • 明细表
    • 布局流程
      • 透视表
      • 明细表
    • 性能介绍
      Updated
  • 贡献指南
  • 常见问题
  • S2 2.0 升级指南

编辑表

下一篇
简介

Resources

Ant Design
Galacea Effects
Umi-React 应用开发框架
Dumi-组件/文档研发工具
ahooks-React Hooks 库

社区

体验科技专栏
seeconfSEE Conf-蚂蚁体验科技大会

帮助

GitHub
StackOverflow

more products更多产品

Ant DesignAnt Design-企业级 UI 设计语言
yuque语雀-知识创作与分享工具
EggEgg-企业级 Node 开发框架
kitchenKitchen-Sketch 工具集
GalaceanGalacean-互动图形解决方案
xtech蚂蚁体验科技
© Copyright 2025 Ant Group Co., Ltd..备案号:京ICP备15032932号-38

Loading...

简介

编辑表是 S2 明细表的衍生形态之一,基于 React 版本的明细表封装,在提供完整的明细表的分析功能之外,还支持对数据的修改操作。

editable-mode

使用

注意

编辑表的原理本质上是在 Canvas 表格上增加一个 div 蒙层,来实现对数据的编辑,如果想在 @antv/s2 和 @antv/s2-vue 中使用,请自行参考 React 版本的实现 进行封装。

<div id="container"></div>
import React from "react";
import ReactDOM from "react-dom";
import { SheetComponent } from '@antv/s2-react';
import '@antv/s2-react/dist/s2-react.min.css';
// 1. 准备数据
const data = [
{
"province": "浙江",
"city": "杭州",
"type": "笔",
"price": 1
},
{
"province": "浙江",
"city": "杭州",
"type": "纸张",
"price": 2
},
{
"province": "浙江",
"city": "舟山",
"type": "笔",
"price": 17
},
{
"province": "浙江",
"city": "舟山",
"type": "纸张",
"price": 6
},
{
"province": "吉林",
"city": "长春",
"type": "笔",
"price": 8
},
{
"province": "吉林",
"city": "白山",
"type": "笔",
"price": 12
},
{
"province": "吉林",
"city": "长春",
"type": "纸张",
"price": 3
},
{
"province": "吉林",
"city": "白山",
"type": "纸张",
"price": 25
},
{
"province": "浙江",
"city": "杭州",
"type": "笔",
"price": 20
},
{
"province": "浙江",
"city": "杭州",
"type": "纸张",
"price": 10
},
{
"province": "浙江",
"city": "舟山",
"type": "笔",
"price": 15
},
{
"province": "浙江",
"city": "舟山",
"type": "纸张",
"price": 2
},
{
"province": "吉林",
"city": "长春",
"type": "笔",
"price": 15
},
{
"province": "吉林",
"city": "白山",
"type": "笔",
"price": 30
},
{
"province": "吉林",
"city": "长春",
"type": "纸张",
"price": 40
},
{
"province": "吉林",
"city": "白山",
"type": "纸张",
"price": 50
}
];
// 2. 配置数据
const s2DataCfg = {
fields: {
columns: ["province", "city", "type", "price"], // 要展示的列头字段 id 列表
},
meta: [
// 列头字段对应的元信息,比如展示的中文名
{
field: "province",
name: "省份",
},
{
field: "city",
name: "城市",
},
{
field: "type",
name: "类型",
},
{
field: "price",
name: "价格",
},
],
data,
};
// 3. 添加配置
const s2Options = {
width: 400,
height: 200,
};
// 4, 渲染
ReactDOM.render(
<SheetComponent
sheetType="editable" // 此处指定 sheetType 为 editable
dataCfg={s2DataCfg}
options={s2Options}
onDataCellEditStart={(meta, cell) => {
console.log('onDataCellEditStart:', meta, cell);
}}
onDataCellEditEnd={(meta, cell) => {
console.log('onDataCellEditEnd:', meta, cell);
}}
/>,
document.getElementById('container')
);

效果

查看示例
preview