Skip to content

Commit 38d28c0

Browse files
authored
docs: add demos for label doc (#3690)
1 parent 7716765 commit 38d28c0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+2026
-967
lines changed

.prettierignore

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
*.svg
44
*.gif
55
*.log
6+
*.md
67
.DS_Store
78
CNAME
89
AUTHORS

sites/x6-sites/.dumi/global.less

+4
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ h3 {
66
border-bottom: none !important;
77
}
88

9+
ul {
10+
margin-bottom: 16px !important;
11+
}
12+
913
.dumi-default-source-code {
1014
margin: 24px 0;
1115

sites/x6-sites/docs/api/graph/panning.zh.md

+6-4
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ redirect_from:
1515

1616
普通画布(未使用 `scroller` 插件)通过开启 `panning` 选项来支持拖拽平移。
1717

18-
:::warning{title=注意} 不要同时使用 `scroller``panning`,因为两种形式在交互上有冲突。 :::
18+
:::warning{title=注意}
19+
不要同时使用 `scroller``panning`,因为两种形式在交互上有冲突。
20+
:::
1921

2022
```ts
2123
const graph = new Graph({
@@ -104,6 +106,6 @@ togglePanning(enabled?: boolean): this
104106
105107
切换画布平移启用状态。参数如下:
106108
107-
| 名称 | 类型 | 必选 | 默认值 | 描述 |
108-
| --- | --- | :-: | --- | --- |
109-
| enabled | boolean | | - | 是否启用画布平移功能,缺省时切换画布平移的启用状态。 |
109+
| 名称 | 类型 | 必选 | 默认值 | 描述 |
110+
|---------|---------|:----:|--------|--------------------------------------------------|
111+
| enabled | boolean | | - | 是否启用画布平移功能,缺省时切换画布平移的启用状态。 |

sites/x6-sites/docs/api/model/attrs.zh.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,9 @@ graph.addNode({
6262

6363
上面这些属性默认相对于节点的大小进行计算,另外我们可以通过 `ref` 属性来提供一个子元素选择器,这时所有的计算都相对于 `ref` 指代的元素,从而实现相对于子元素的大小和位置。
6464

65-
:::warning{title=注意} 需要注意的是,设置 `ref` 后,所有计算都依赖子元素在浏览器中的 bbox 测量,所以性能会比相对于节点的方式要慢。 :::
65+
:::warning{title=注意}
66+
需要注意的是,设置 `ref` 后,所有计算都依赖子元素在浏览器中的 bbox 测量,所以性能会比相对于节点的方式要慢。
67+
:::
6668

6769
```ts
6870
graph.addNode({

sites/x6-sites/docs/api/model/cell.zh.md

+271-267
Large diffs are not rendered by default.

sites/x6-sites/docs/api/model/labels.zh.md

+17-17
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Label
2+
title: 标签
33
order: 3
44
redirect_from:
55
- /zh/docs
@@ -11,14 +11,14 @@ X6 中边的标签配置非常灵活,所以这里用单独的篇幅来详细
1111

1212
开始之前,我们先简单了解一下 Edge 实例上操作标签的几个方法。
1313

14-
| 方法签名 | 说明 |
15-
| --- | --- |
16-
| [edge.getLabels()](/zh/docs/api/model/edge#getlabels) | 获取所有标签。 |
17-
| [edge.setLabels(...)](/zh/docs/api/model/edge#setlabels) | 设置标签。 |
18-
| [edge.insertLabel(...)](/zh/docs/api/model/edge#insertlabel) | 在指定位置插入标签。 |
19-
| [edge.appendLabel(...)](/zh/docs/api/model/edge#appendlabel) | 在末尾追加标签。 |
20-
| [edge.setLabelAt(...)](/zh/docs/api/model/edge#setlabelat) | 设置指定位置的标签。 |
21-
| [edge.getLabelAt(...)](/zh/docs/api/model/edge#getlabelat) | 获取指定位置的标签。 |
14+
| 方法签名 | 说明 |
15+
|------------------------------------------------------------------|-------------------|
16+
| [edge.getLabels()](/zh/docs/api/model/edge#getlabels) | 获取所有标签。 |
17+
| [edge.setLabels(...)](/zh/docs/api/model/edge#setlabels) | 设置标签。 |
18+
| [edge.insertLabel(...)](/zh/docs/api/model/edge#insertlabel) | 在指定位置插入标签。 |
19+
| [edge.appendLabel(...)](/zh/docs/api/model/edge#appendlabel) | 在末尾追加标签。 |
20+
| [edge.setLabelAt(...)](/zh/docs/api/model/edge#setlabelat) | 设置指定位置的标签。 |
21+
| [edge.getLabelAt(...)](/zh/docs/api/model/edge#getlabelat) | 获取指定位置的标签。 |
2222
| [edge.removeLabelAt(...)](/zh/docs/api/model/edge#removelabelat) | 删除指定位置的标签。 |
2323

2424
## 标签定义
@@ -111,7 +111,7 @@ edge.appendLabel({
111111
})
112112
```
113113

114-
<!-- <iframe src="/demos/tutorial/intermediate/edge-labels/append-label"></iframe> -->
114+
<code id="append-label" src="@/src/api/label/append-label/index.tsx"></code>
115115

116116
## 标签位置
117117

@@ -158,7 +158,7 @@ edge.appendLabel({
158158
})
159159
```
160160

161-
<!-- <iframe src="/demos/tutorial/intermediate/edge-labels/label-position"></iframe> -->
161+
<code id="label-position" src="@/src/api/label/label-position/index.tsx"></code>
162162

163163
### 偏移
164164

@@ -209,7 +209,7 @@ edge.appendLabel({
209209
})
210210
```
211211

212-
<!-- <iframe src="/demos/tutorial/intermediate/edge-labels/label-offset"></iframe> -->
212+
<code id="label-offset" src="@/src/api/label/label-offset/index.tsx"></code>
213213

214214
### 旋转
215215

@@ -308,13 +308,13 @@ edge.appendLabel({
308308
})
309309
```
310310

311-
<!-- <iframe src="/demos/tutorial/intermediate/edge-labels/label-rotate"></iframe> -->
311+
<code id="label-rotate" src="@/src/api/label/label-rotate/index.tsx"></code>
312312

313313
## 标签样式
314314

315315
我们可以通过 `markup``attrs` 两个选项来定制标签样式,并支持两个维度的定制。
316316

317-
**方式一**创建 Edge 时全局覆盖默认标签的定义,影响所有标签。
317+
**方式一**创建 Edge 时全局覆盖默认标签的定义,影响所有标签。
318318

319319
```ts
320320
const edge = graph.addEdge({
@@ -372,9 +372,9 @@ edge.appendLabel({
372372
})
373373
```
374374

375-
<!-- <iframe src="/demos/tutorial/intermediate/edge-labels/label-markup"></iframe> -->
375+
<code id="label-markup" src="@/src/api/label/label-markup/index.tsx"></code>
376376

377-
**方式二**创建单个标签时覆盖默认标签的定义,影响单个标签。
377+
**方式二**创建单个标签时覆盖默认标签的定义,影响单个标签。
378378

379379
```ts
380380
edge.appendLabel({
@@ -440,7 +440,7 @@ edge.appendLabel({
440440
})
441441
```
442442

443-
<!-- <iframe src="/demos/tutorial/intermediate/edge-labels/label-attrs"></iframe> -->
443+
<code id="label-attrs" src="@/src/api/label/label-attrs/index.tsx"></code>
444444

445445
## 字符串标签
446446

sites/x6-sites/docs/api/model/marker.zh.md

+63-81
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,8 @@ Registry.Marker.normalize(d: string, offset: { x?: number; y?: number }): string
4444
Registry.Marker.normalize(d: string, offsetX?: number, offsetY?: number): string
4545
```
4646

47-
<span class="tag-param">参数<span>
48-
4947
| 参数名 | 类型 | 说明 |
50-
| ------- | -------------------------- | --------------------------- |
48+
|---------|----------------------------|-----------------------------|
5149
| d | string | |
5250
| offset | { x?: number; y?: number } | 相对于坐标原点的偏移量 |
5351
| offsetX | number | 相对于坐标原点的 x 轴偏移量 |
@@ -156,82 +154,72 @@ edge.attr({
156154

157155
实心箭头。
158156

159-
<span class="tag-param">参数<span>
160-
161-
| 参数名 | 类型 | 默认值 | 说明 |
162-
| --- | --- | --- | --- |
163-
| size | Number | 10 | 箭头大小。 |
164-
| width | Number | size | 箭头宽度,当宽高一样时可以直接使用 `size` 替代。 |
165-
| height | Number | size | 箭头高度,当宽高一样时可以直接使用 `size` 替代。 |
166-
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
167-
| open | Boolean | false | 非封闭箭头。 |
168-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
157+
| 参数名 | 类型 | 默认值 | 说明 |
158+
|----------|---------|--------|------------------------------------------------------------------------------------|
159+
| size | Number | 10 | 箭头大小。 |
160+
| width | Number | size | 箭头宽度,当宽高一样时可以直接使用 `size` 替代。 |
161+
| height | Number | size | 箭头高度,当宽高一样时可以直接使用 `size` 替代。 |
162+
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
163+
| open | Boolean | false | 非封闭箭头。 |
164+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
169165

170166
### classic
171167

172168
经典箭头。
173169

174-
<span class="tag-param">参数<span>
175-
176-
| 参数名 | 类型 | 默认值 | 说明 |
177-
| --- | --- | --- | --- |
178-
| size | Number | 10 | 箭头大小。 |
179-
| width | Number | size | 箭头宽度,当宽高一样时可以直接使用 `size` 替代。 |
180-
| height | Number | size | 箭头高度,当宽高一样时可以直接使用 `size` 替代。 |
181-
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
182-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
170+
| 参数名 | 类型 | 默认值 | 说明 |
171+
|----------|--------|--------|------------------------------------------------------------------------------------|
172+
| size | Number | 10 | 箭头大小。 |
173+
| width | Number | size | 箭头宽度,当宽高一样时可以直接使用 `size` 替代。 |
174+
| height | Number | size | 箭头高度,当宽高一样时可以直接使用 `size` 替代。 |
175+
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
176+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
183177

184178
### diamond
185179

186180
菱形箭头。
187181

188-
<span class="tag-param">参数<span>
189-
190-
| 参数名 | 类型 | 默认值 | 说明 |
191-
| --- | --- | --- | --- |
192-
| size | Number | 10 | 箭头大小。 |
193-
| width | Number | size | 箭头宽度,当宽高一样时可以直接使用 `size` 替代。 |
194-
| height | Number | size | 箭头高度,当宽高一样时可以直接使用 `size` 替代。 |
195-
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
196-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
182+
| 参数名 | 类型 | 默认值 | 说明 |
183+
|----------|--------|--------|------------------------------------------------------------------------------------|
184+
| size | Number | 10 | 箭头大小。 |
185+
| width | Number | size | 箭头宽度,当宽高一样时可以直接使用 `size` 替代。 |
186+
| height | Number | size | 箭头高度,当宽高一样时可以直接使用 `size` 替代。 |
187+
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
188+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
197189

198190
### cross
199191

200192
交叉箭头。
201193

202-
<span class="tag-param">参数<span>
203-
204-
| 参数名 | 类型 | 默认值 | 说明 |
205-
| --- | --- | --- | --- |
206-
| size | Number | 10 | 箭头大小。 |
207-
| width | Number | size | 箭头宽度,当宽高一样时可以直接使用 `size` 替代。 |
208-
| height | Number | size | 箭头高度,当宽高一样时可以直接使用 `size` 替代。 |
209-
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
210-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
194+
| 参数名 | 类型 | 默认值 | 说明 |
195+
|----------|--------|--------|------------------------------------------------------------------------------------|
196+
| size | Number | 10 | 箭头大小。 |
197+
| width | Number | size | 箭头宽度,当宽高一样时可以直接使用 `size` 替代。 |
198+
| height | Number | size | 箭头高度,当宽高一样时可以直接使用 `size` 替代。 |
199+
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
200+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
211201

212202
### async
213203

214-
| 参数名 | 类型 | 默认值 | 说明 |
215-
| --- | --- | --- | --- |
216-
| width | Number | 10 | 箭头宽度。 |
217-
| height | Number | 6 | 箭头高度。 |
218-
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
219-
| open | Boolean | false | 非封闭箭头。 |
220-
| flip | Boolean | false | 是否翻转箭头。 |
221-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
204+
| 参数名 | 类型 | 默认值 | 说明 |
205+
|----------|---------|--------|------------------------------------------------------------------------------------|
206+
| width | Number | 10 | 箭头宽度。 |
207+
| height | Number | 6 | 箭头高度。 |
208+
| offset | Number | 0 | 沿边方向的绝对偏移量。 |
209+
| open | Boolean | false | 非封闭箭头。 |
210+
| flip | Boolean | false | 是否翻转箭头。 |
211+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
222212

223213
### path
224214

225215
自定义 [pathData](https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/d) 的箭头。
226216

227-
<span class="tag-param">参数<span>
228-
229-
| 参数名 | 类型 | 默认值 | 说明 |
230-
| --- | --- | --- | --- |
231-
| d | string | undefined | `<path>` 元素的 [d 属性值](https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/d),被 `Util.normalizeMarker` 标准化后应用到 `<path>` 元素上。 |
232-
| offsetX | Number | 0 | x 方向偏移量。 |
233-
| offsetY | Number | 0 | y 方向偏移量。 |
234-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
217+
| 参数名 | 类型 | 默认值 | 说明 |
218+
|----------|--------|-----------|--------------------------------------------------------------------------------------------------------------------------------------------------|
219+
| d | string | undefined | `<path>` 元素的 [d 属性值](https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/d),被 `Util.normalizeMarker` 标准化后应用到 `<path>` 元素上。 |
220+
| offsetX | Number | 0 | x 方向偏移量。 |
221+
| offsetY | Number | 0 | y 方向偏移量。 |
222+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
235223

236224
```ts
237225
graph.addEdge({
@@ -260,35 +248,29 @@ graph.addEdge({
260248

261249
圆形箭头。
262250

263-
<span class="tag-param">参数<span>
264-
265-
| 参数名 | 类型 | 默认值 | 说明 |
266-
| --- | --- | --- | --- |
267-
| r | Number | 5 | 圆半径。 |
268-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<circle>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
251+
| 参数名 | 类型 | 默认值 | 说明 |
252+
|----------|--------|--------|--------------------------------------------------------------------------------------|
253+
| r | Number | 5 | 圆半径。 |
254+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<circle>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
269255

270256
### circlePlus
271257

272258
圆形和加号箭头。
273259

274-
<span class="tag-param">参数<span>
275-
276-
| 参数名 | 类型 | 默认值 | 说明 |
277-
| --- | --- | --- | --- |
278-
| r | Number | 5 | 圆半径。 |
279-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素(加号)的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
260+
| 参数名 | 类型 | 默认值 | 说明 |
261+
|----------|--------|--------|------------------------------------------------------------------------------------------|
262+
| r | Number | 5 | 圆半径。 |
263+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<path>` 元素(加号)的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
280264

281265
### ellipse
282266

283267
椭圆箭头。
284268

285-
<span class="tag-param">参数<span>
286-
287-
| 参数名 | 类型 | 默认值 | 说明 |
288-
| --- | --- | --- | --- |
289-
| rx | Number | 5 | 椭圆 x 轴半径。 |
290-
| ry | Number | 5 | 椭圆 y 轴半径。 |
291-
| ...attrs | Object | { } | 其他参数都将作为箭头 `<ellipse>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
269+
| 参数名 | 类型 | 默认值 | 说明 |
270+
|----------|--------|--------|---------------------------------------------------------------------------------------|
271+
| rx | Number | 5 | 椭圆 x 轴半径。 |
272+
| ry | Number | 5 | 椭圆 y 轴半径。 |
273+
| ...attrs | Object | { } | 其他参数都将作为箭头 `<ellipse>` 元素的属性,例如可以指定 `‘fill’``'stroke'` 等属性。 |
292274

293275
## 注册箭头
294276

@@ -330,7 +312,7 @@ edge.attr({
330312
上面的配置被解析后,分别得到起始和终止箭头的箭头名称和箭头参数。
331313
332314
| 箭头类型 | 箭头名称 name | 箭头参数 args |
333-
| ------------ | ------------- | ----------------- |
315+
|--------------|---------------|-------------------|
334316
| sourceMarker | block | { } |
335317
| targetMarker | ellipse | { rx: 10, ry: 6 } |
336318
@@ -342,11 +324,11 @@ edge.attr({
342324
Graph.registerMarker(name: string, factory: Factory, overwrite?: boolean)
343325
```
344326
345-
| 参数名 | 参数类型 | 默认值 | 说明 |
346-
| --- | --- | --- | --- |
347-
| name | String | | 箭头名。 |
348-
| factory | Factory | | 箭头工厂方法。 |
349-
| overwrite | Boolean | false | 遇到重名时是否覆盖旧工厂方法,设置为 `true` 时覆盖,否则报错。 |
327+
| 参数名 | 参数类型 | 默认值 | 说明 |
328+
|-----------|----------|--------|-----------------------------------------------------------|
329+
| name | String | | 箭头名。 |
330+
| factory | Factory | | 箭头工厂方法。 |
331+
| overwrite | Boolean | false | 遇到重名时是否覆盖旧工厂方法,设置为 `true` 时覆盖,否则报错。 |
350332
351333
最后,我们来注册一个 image 箭头。
352334

0 commit comments

Comments
 (0)