目前G6提供了很多基础的功能,身边想要使用或者已经使用的同学都会提到G6的文档不是很易读,其实还好,只是与antd这种成品组件有区别,G6是砖头,是窗户,是屋梁,想要搭建什么的房子是业务决定的。
为了满足业务上的需求,基于 G6 定制了两个表格之间拖拽连线的组件,支持字段超长的省略显示、预览等功能,更多功能等你的来探索。
效果图
**
安装
**
npm i --save g6table
API
**
名称 | 说明 | 默认 |
---|---|---|
lineHeight | 行高,设置表格单行高度 | 必填 |
fontSize | 字体大小 | 必填 |
columnWidth | 列宽度,设置每列宽度,超长做省略展示,可以通过悬浮窗预览 | 必填 |
left2right | 左右两边间距 | 必填 |
edgeCallBack | 单击连线回调 | 可为空 |
handleNodeDblclickCallback | 双击节点回调 | 可为空 |
edgeRemoveCallBack | 双击连线删除回调 | 可为空 |
edgeConenctedCallBack | 连线成功回调 | 可为空 |
canDoubleClick | 连线是否可以双击(删除) | 可为空 |
canDragEdge | 是否可以连线 | 可为空 |
graphWidth | 整个图宽度 | 必填 |
注意事项
1、左右节点数据需要初始化;
2、数据需要包含id**,回调中source与target数据id为数据id组装完成。
举个🌰
import {Editor, TableNode} from "g6table/dist";
const initConfig = {
lineHeight: 40,
fontSize: 14,
columnWidth: 100,
left2right: 200,
edgeCallBack: edgeCallBack,
handleNodeDblclickCallback: handleNodeDblclickCallback,
edgeRemoveCallBack: edgeRemoveCallBack,
edgeConenctedCallBack: edgeConenctedCallBack,
canDoubleClick: false,
canDragEdge: true,
graphWidth:document.body.clientWidth - 200
};
const data = {
leftData: [{ id: 1, name: '名字', password: '密码' },{ id: 2, name: 'jack', password: '123' }],
rightData: [{ id: 1, name: '名字', password: '密码' },{ id: 2, name: 'jack', password: '123' }]
}
<Editor>
<TableNode
data={data}
config={initConfig} />
</Editor>
G6 —— 专业的图可视化引擎。让关系数据变得简单透明,让用户获得 Insight。
G6 官网:https://g6.antv.vision/zh 欢迎关注。 GitHub:https://github.com/antvis/G6 欢迎 Star。