From a7a29356de35071a1d374ba9a76b1989fe0c128f Mon Sep 17 00:00:00 2001
From: wangyupei <2311595895@qq.com>
Date: Fri, 8 Apr 2022 16:33:05 +0800
Subject: [PATCH] =?UTF-8?q?feat(Table):=20=E8=A7=84=E8=8C=83=E7=BB=86?=
=?UTF-8?q?=E8=8A=82=E5=BE=AE=E8=B0=83&=E5=8F=82=E7=85=A7=E8=A7=84?=
=?UTF-8?q?=E8=8C=83=E5=AE=8C=E5=96=84Table=E6=96=87=E6=A1=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../devui-vue/docs/components/table/index.md | 80 ++++++++++---------
.../component-document/index.md | 56 ++++++-------
2 files changed, 71 insertions(+), 65 deletions(-)
diff --git a/packages/devui-vue/docs/components/table/index.md b/packages/devui-vue/docs/components/table/index.md
index 86038ada06..2c9abfbec5 100644
--- a/packages/devui-vue/docs/components/table/index.md
+++ b/packages/devui-vue/docs/components/table/index.md
@@ -807,52 +807,54 @@ export default defineComponent({
:::
-### d-table 参数
-
-| 参数名 | 类型 | 默认值 | 说明 | 跳转 Demo |
-| :-------------------- | :------------------ | :------ | :------------------------------------------------------------------------- | :------------------------ |
-| data | `array` | [] | 可选,显示的数据 | [基本用法](#基本用法) |
-| striped | `boolean` | false | 可选,是否显示斑马纹间隔 | [表格样式](#表格样式) |
-| size | `TableSize` | 'sm' | 可选,表格大小,分别对应行高 40px,48px,56px | [表格样式](#表格样式) |
-| max-width | `string` | -- | 可选,表格最大宽度 |
-| max-height | `boolean` | -- | 可选,表格最大高度 |
-| table-width | `string` | -- | 可选,表格宽度 |
-| table-height | `string` | -- | 可选,表格高度 |
-| row-hovered-highlight | `boolean` | true | 可选,鼠标在该行上时,高亮该行 | [表格样式](#表格样式) |
-| fix-header | `boolean` | false | 可选,固定头部 | [固定表头](#固定表头) |
-| show-loading | `boolean` | false | 可选,显示加载动画 | [空数据模板](#空数据模板) |
-| header-bg | `boolean` | false | 可选,头部背景 | [表格样式](#表格样式) |
-| table-layout | `'fixed' \| 'auto'` | 'fixed' | 可选,表格布局,可选值为'auto' | [表格样式](#表格样式) |
-| span-method | `SpanMethod` | -- | 可选,合并单元格的计算方法 | [合并单元格](#合并单元格) |
-| border-type | `BorderType` | '' | 可选,表格边框类型,默认有行边框;`bordered`: 全边框;`borderless`: 无边框 | [表格样式](#表格样式) |
-
-### d-table 方法
+### Table 参数
+
+| 参数名 | 类型 | 默认值 | 说明 | 跳转 Demo |
+| :-------------------- | :------------------------ | :------ | :------------------------------------------------------------------------- | :------------------------ |
+| data | `array` | [] | 可选,显示的数据 | [基本用法](#基本用法) |
+| striped | `boolean` | false | 可选,是否显示斑马纹间隔 | [表格样式](#表格样式) |
+| size | [TableSize](#tablesize) | 'sm' | 可选,表格大小,分别对应行高 40px,48px,56px | [表格样式](#表格样式) |
+| max-width | `string` | -- | 可选,表格最大宽度 |
+| max-height | `boolean` | -- | 可选,表格最大高度 |
+| table-width | `string` | -- | 可选,表格宽度 |
+| table-height | `string` | -- | 可选,表格高度 |
+| row-hovered-highlight | `boolean` | true | 可选,鼠标在该行上时,高亮该行 | [表格样式](#表格样式) |
+| fix-header | `boolean` | false | 可选,固定头部 | [固定表头](#固定表头) |
+| show-loading | `boolean` | false | 可选,显示加载动画 | [空数据模板](#空数据模板) |
+| header-bg | `boolean` | false | 可选,头部背景 | [表格样式](#表格样式) |
+| table-layout | `'fixed' \| 'auto'` | 'fixed' | 可选,表格布局,可选值为'auto' | [表格样式](#表格样式) |
+| span-method | [SpanMethod](#spanmethod) | -- | 可选,合并单元格的计算方法 | [合并单元格](#合并单元格) |
+| border-type | [BorderType](#bordertype) | '' | 可选,表格边框类型,默认有行边框;`bordered`: 全边框;`borderless`: 无边框 | [表格样式](#表格样式) |
+
+### Table 方法
| 方法名 | 类型 | 说明 |
| :------------- | :--------- | :------------------- |
| getCheckedRows | `() => []` | 获取当前选中的行数据 |
-### d-column 参数
+### Column 参数
-| 参数名 | 类型 | 默认值 | 说明 | 跳转 Demo |
-| :---------- | :----------------- | :----- | :------------------------------------------ | :-------------------- |
-| header | `string` | -- | 可选,对应列的标题 | [基本用法](#基本用法) |
-| field | `string` | -- | 可选,对应列内容的字段名 | [基本用法](#基本用法) |
-| type | `ColumnType` | '' | 可选,列的类型,设置`checkable`会显示多选框 | [表格多选](#表格多选) |
-| width | `string \| number` | -- | 可选,对应列的宽度,单位`px` |
-| min-width | `string \| number` | -- | 可选,对应列的最小宽度,单位`px` |
-| fixed-left | `string` | -- | 可选,该列固定到左侧的距离,如:'100px' | [固定列](#固定列) |
-| fixed-right | `string` | -- | 可选,该列固定到右侧的距离,如:'100px' | [固定列](#固定列) |
-| formatter | `Formatter` | -- | 可选,格式化列内容 |
+| 参数名 | 类型 | 默认值 | 说明 | 跳转 Demo |
+| :---------- | :------------------------ | :----- | :------------------------------------------ | :-------------------- |
+| header | `string` | -- | 可选,对应列的标题 | [基本用法](#基本用法) |
+| field | `string` | -- | 可选,对应列内容的字段名 | [基本用法](#基本用法) |
+| type | [ColumnType](#columntype) | '' | 可选,列的类型,设置`checkable`会显示多选框 | [表格多选](#表格多选) |
+| width | `string \| number` | -- | 可选,对应列的宽度,单位`px` |
+| min-width | `string \| number` | -- | 可选,对应列的最小宽度,单位`px` |
+| fixed-left | `string` | -- | 可选,该列固定到左侧的距离,如:'100px' | [固定列](#固定列) |
+| fixed-right | `string` | -- | 可选,该列固定到右侧的距离,如:'100px' | [固定列](#固定列) |
+| formatter | [Formatter](#formatter) | -- | 可选,格式化列内容 |
-### d-column 插槽
+### Column 插槽
-| 插槽名 | 说明 |
-| :------ | :----------------------- |
-| default | 默认插槽,自定义列内容 |
-| header | 表头插槽,自定义表头内容 |
+| 插槽名 | 说明 | 参数 |
+| :------ | :----------------------- | :------------------ |
+| default | 默认插槽,自定义列内容 | `{ row, rowIndex }` |
+| header | 表头插槽,自定义表头内容 | |
-### 类型定义
+### Table 类型定义
+
+
#### TableSize
@@ -877,6 +879,10 @@ type SpanMethod = (data: {
type BorderType = '' | 'bordered' | 'borderless';
```
+### Column 类型定义
+
+
+
#### ColumnType
```ts
diff --git a/packages/devui-vue/docs/contributing/development-specification/component-document/index.md b/packages/devui-vue/docs/contributing/development-specification/component-document/index.md
index d466384078..043a0579bc 100644
--- a/packages/devui-vue/docs/contributing/development-specification/component-document/index.md
+++ b/packages/devui-vue/docs/contributing/development-specification/component-document/index.md
@@ -2,38 +2,38 @@
### Demo 文档
-1. 演示demo需要对所使用的API及组件默认行为和样式等进行尽可能详细的说明。避免让用户自己去推测,降低用户学习和使用成本。
-2. 每个组件的第一个demo,应该是组件最基本的用法,即展示组件在不传参数或者传入最基本参数情况下的效果。后面的demo应该尽可能按照参数的使用频率来排序。
-3. 每个demo所展示的API应该尽量精简,尽量不要一个demo中展示多个API的用法。
-4. 当API是枚举值时,demo中应尽量展示每个枚举值的效果。
-5. 演示demo代码,组件的参数大于三个或单行过长时需要每个参数占用一行来展示,避免出现横向滚动条,。
-6. 演示demo自定义class样式,命名格式为xxx-demo-yyy(xxx为组件名,yyy为自定义样式名),不然会成为全局样式,有可能影响其他组件或者demo效果。
-7. 文案描述需清晰,尽量参考ng devui的文案描述,尽量避免口语化;标点符号使用需正确;文案中若涉及到英文单词,需在单次左右两侧加一个空格。
-8. 一个标题尽量展示一个demo,避免一个标题中展示多个demo。
-9. boolean类型的参数,在demo中展示,设置为true的时候,不需要显式的设置为true,直接写参数名字即可。
-10. demo的描述说明文案中,用到代码块的地方需要用反引号包裹。
-11. demo的描述说明文案应该跟在:::demo后面,不应该放在h4或其他标签中,也不应该放在代码块外面。
+1. 演示 demo 需要对所使用的 API 及组件默认行为和样式等进行尽可能详细的说明。避免让用户自己去推测,降低用户学习和使用成本。
+2. 每个组件的第一个 demo,应该是组件最基本的用法,即展示组件在不传参数或者传入最基本参数情况下的效果。后面的 demo 应该尽可能按照参数的使用频率来排序。
+3. 每个 demo 所展示的 API 应该尽量精简,尽量不要一个 demo 中展示多个 API 的用法。
+4. 当 API 是枚举值时,demo 中应尽量展示每个枚举值的效果。
+5. 演示 demo 代码,组件的参数大于三个或单行过长时需要每个参数占用一行来展示,避免出现横向滚动条,。
+6. 演示 demo 自定义 class 样式,命名格式为 xxx-demo-yyy(xxx 为组件名,yyy 为自定义样式名),不然会成为全局样式,有可能影响其他组件或者 demo 效果。
+7. 文案描述需清晰,尽量参考 ng devui 的文案描述,尽量避免口语化;标点符号使用需正确;文案中若涉及到英文单词,需在单次左右两侧加一个空格。
+8. 一个标题尽量展示一个 demo,避免一个标题中展示多个 demo。
+9. boolean 类型的参数,在 demo 中展示,设置为 true 的时候,不需要显式的设置为 true,直接写参数名字即可。
+10. demo 的描述说明文案中,用到代码块的地方需要用反引号包裹。
+11. demo 的描述说明文案应该跟在:::demo 后面,不应该放在 h4 或其他标签中,也不应该放在代码块外面。
12. 【何时使用】标题等级应该为四级,避免出现在快速前往导航中。
### API 文档
-1. API部分应该遵循参数、事件、方法、插槽、类型定义的顺序,若某一项缺失则跳过;如果组件有特殊项需要说明,需要在类型定义后面编写。
-2. API表格的标题,组成格式为:Xxx [参数 | 事件 | 方法 | 插槽],Xxx为组件名字,采用大驼峰书写,需要注意组件名字后面加一个空格,标题等级为三级;类型定义标题的格式为Xxx 类型定义,组件名字同样为大驼峰格式,中间同样需要加一个空格,标题等级同样为三级,具体类型名字跟随在后面用四级标题定义。
-3. API表格表头和内容应该左对齐。
-4. 参数表格需要具备的列名及顺序为:参数名、类型、默认值、说明、跳转Demo。
- - 参数不需要使用反引号。
- - 类型需要使用反引号包裹;类型需准确,简单枚举值类型可直接列出来,复杂一些的类型可以写类型名字(如SizeType),然后增加锚点定位;参数基本类型采用首字母小写string,自定义类型名字采用大驼峰命名,(如SizeType)。
- - 默认值不需要反引号包裹,如果默认值为字符串或者枚举类型,应该使用单引号包裹,若无默认值则用双横线--表示。
- - 说明中需要标注该参数为必选还是可选。
- - 跳转Demo中的链接需能够正确跳转,并且demo中需要展示对应API的用法;若无展示Demo,则空白展示。
-5. 事件表格需要具备的列名及顺序为:事件名、回调参数、说明、跳转Demo。
- - 事件名不需要使用反引号。
- - 回调参数需要使用反引号包裹;类型格式为Function(name: string)。
- - 跳转Demo中的链接需能够正确跳转,并且demo中需要展示对应API的用法;若无展示Demo,则空白展示。
+1. API 部分应该遵循参数、事件、方法、插槽、类型定义的顺序,若某一项缺失则跳过;如果组件有特殊项需要说明,需要在类型定义后面编写。
+2. API 表格的标题,组成格式为:Xxx [参数 | 事件 | 方法 | 插槽],Xxx 为组件名字,采用大驼峰书写,需要注意组件名字后面加一个空格,标题等级为三级;类型定义标题的格式为 Xxx 类型定义,组件名字同样为大驼峰格式,中间同样需要加一个空格,标题等级同样为三级,标题后需要加一个`br`标签,防止和后面具体类型靠得太紧;具体类型名字跟随在后面用四级标题定义。
+3. API 表格表头和内容应该左对齐。
+4. 参数表格需要具备的列名及顺序为:参数名、类型、默认值、说明、跳转 Demo。
+ - 参数不需要使用反引号。
+ - 类型需要使用反引号包裹(需要增加锚点定位的类型除外);类型需准确,简单枚举值类型可直接列出来,复杂一些的类型可以写类型名字(如 SizeType),然后增加锚点定位;参数基本类型采用首字母小写 string,自定义类型名字采用大驼峰命名,(如 SizeType)。
+ - 默认值不需要反引号包裹,如果默认值为字符串或者枚举类型,应该使用单引号包裹,若无默认值则用双横线--表示。
+ - 说明中需要标注该参数为必选还是可选。
+ - 跳转 Demo 中的链接需能够正确跳转,并且 demo 中需要展示对应 API 的用法;若无展示 Demo,则空白展示。
+5. 事件表格需要具备的列名及顺序为:事件名、回调参数、说明、跳转 Demo。
+ - 事件名不需要使用反引号。
+ - 回调参数需要使用反引号包裹;类型格式为 Function(name: string)。
+ - 跳转 Demo 中的链接需能够正确跳转,并且 demo 中需要展示对应 API 的用法;若无展示 Demo,则空白展示。
6. 方法表格需要具备的列名及顺序为:方法名、类型、说明。
- 方法名不需要使用反引号。
- - 类型需要使用反引号包裹。
+ - 类型需要使用反引号包裹。
7. 插槽表格需要具备的列名及顺序为:插槽名、说明、参数。
- - 默认插槽也需要做说明,并且插槽名字应该为default。
- - 参数为组件内部暴露出来的数据。
-8. 类型定义需要使用typescript代码块,代码块格式为type xxx = yyy。
+ - 默认插槽也需要做说明,并且插槽名字应该为 default。
+ - 参数为组件内部暴露出来的数据。
+8. 类型定义需要使用 typescript 代码块,代码块格式为 type xxx = yyy。