@qilitt-mickey/vue3-temp-skill 1.1.15 → 1.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qilitt-mickey/vue3-temp-skill",
3
- "version": "1.1.15",
3
+ "version": "1.1.17",
4
4
  "description": "Vue 3 企业级中后台项目开发规范技能包 — core-kernel 架构、按需功能模块",
5
5
  "bin": {
6
6
  "vue3-temp-skill": "./bin/cli.js"
@@ -37,7 +37,7 @@ lint / type-check **过了也不能放过**下列项。发现即改代码,禁
37
37
  | `toDetail` / 独立 `*Detail` 路由 | 路由无 `activePath`,或 `showLink` 非 `false` | `detail-page` 三件套 |
38
38
  | 同上 | 默认场景缺 `keepAlive`/`moreTags`(业务未声明不要缓存) | 样板默认写出;不要缓存再删 |
39
39
  | 同上 | 详情页无 `initToDetail`,或 `name` 与路由不一致 | 对齐 `defineOptions` |
40
- | 列表页 | 无 `el-card.vts-page-card` / `100vh` 减顶栏定高 / 无 `tableHeight` / 分页在 ReTableBar 外 | `crud-pages` L1–L8 |
40
+ | 列表页 | 无 `el-card.vts-page-card` / `100vh` 减顶栏定高 / 无 `tableHeight` / 分页在 ReTableBar 外 / 操作列手写多按钮未用 `ReTableOperate` | `crud-pages` L1–L9 |
41
41
  | `src/api/**` | 绕过 `@/utils/http`,或虚构 `/api` 前缀,或响应当 `success`/`code` | `http-api` |
42
42
  | 下载/导出 API | 无 `responseType: "blob"` | `http-api` / `download-export` |
43
43
  | 删除/危险操作 | 无确认框 | `feedback-loading` |
@@ -103,7 +103,7 @@ lint / type-check **过了也不能放过**下列项。发现即改代码,禁
103
103
  - [ ] 规范识别回执;令牌 / `platform-config.json` / 侧栏主题一致
104
104
  - [ ] 已建 `design-tokens.scss`;`index.scss` 中其 `@use` 最前
105
105
  - [ ] 冲突清单已逐条处理(见 `design-system`)
106
- - [ ] 有上游设计产出时已读 `design-handoff`:JSON 优先;按**全量令牌核对表 A~E**回填或回执「保留出厂」;`ShowModel: card`;错误色 `#F5222D`;弹窗/壳层改令牌即生效
106
+ - [ ] 有上游设计产出时已读 `design-handoff`:JSON 优先;按**全量令牌核对表 A~E**回填或回执「保留出厂」;`ShowModel` JSON 值(设计默认常 `line`);错误色 `#F5222D`;弹窗/壳层改令牌即生效
107
107
  - [ ] **无**设计落地时未改出厂主色 / ShowModel / 壳层 / 弹窗几何默认
108
108
  - [ ] 组件尺寸三档已落地并桥接 `--el-component-size*`;缺档落到 default;未全局强制 `size="small"`;**查询区不写 size**(三档对照表 ≠ 查询区要用 small)
109
109
 
@@ -45,10 +45,11 @@ useTableSearch(formQuery, searchFn, url)
45
45
  | L2 | 不要写 `height: calc(100vh - …)` / 不要用 JS 测顶栏定高(壳层 + `.vts-page-card` 已填满) |
46
46
  | L3 | 查询区 `bg-bg_color p-5`;展示区 `ReTableBar class="bg-bg_color"` |
47
47
  | L4 | `ReGrid` `:gap="[0,20]"` + cols;表单项 `w-[100%] !mr-0`;`@should-show-collapse` |
48
- | L5 | 操作列 `<ReGridItem suffix>` |
48
+ | L5 | 查询区 `<ReGridItem suffix>`(查询 / 重置 / 展开收起) |
49
49
  | L6 | 表格绑 `ref="multipleTableRef"` + `tableHeight`;分页在 `ReTableBar` `#default` 内、表格下方 |
50
50
  | L7 | `RePagination`:`:pagination` + `@handle-current-change` / `@handle-size-change` |
51
51
  | L8 | 查询与表之间的额外模块包一根元素绑 `otherRef`(须在表格上方,高度计入 `tableTop`) |
52
+ | L9 | 表格操作列 `ReTableOperate :list`;按钮过多用 `limit`(默认 **3**)自动「更多」下拉,见下文专节 |
52
53
 
53
54
  ```vue
54
55
  <script setup lang="ts">
@@ -238,6 +239,34 @@ function handleSizeChange(size: number) {
238
239
 
239
240
  补充:`ReTableOperate` 用 `:list`;`defineOptions.name` === 路由 `name`;`svgLoading` 来自 `useApp()`;列表定高走壳层令牌 + `vts-page-card`。
240
241
 
242
+ ## 操作列按钮过多(ReTableOperate · 强制)
243
+
244
+ 落点:`src/components/ReTableOperate`。列表行操作**必须**用本组件,禁止手写一排 `el-button` / 自造「更多」菜单。
245
+
246
+ ### 行为(与模版一致)
247
+
248
+ | 项 | 约定 |
249
+ |----|------|
250
+ | `limit` | 默认 **`3`**:可见按钮总数阈值(含「更多」槽位) |
251
+ | ≤ `limit` | 全部以文字按钮平铺 |
252
+ | > `limit` | 前 **`limit - 1`** 个平铺,其余进 **「更多」** `el-dropdown` |
253
+ | 过滤顺序 | 先 `auth`(`hasAuth`)→ 再 `show(row)` → 再按 `limit` 折叠 |
254
+ | `size` | 组件默认 `small`(行内紧凑);可按列改 |
255
+
256
+ 示例:`limit=3` 且有 5 个可见按钮 → 平铺 2 个 +「更多」(内含后 3 个)。
257
+
258
+ ```vue
259
+ <!-- 默认折叠阈值 3 -->
260
+ <ReTableOperate :list="operateButtons" :row="row" :index="$index" />
261
+
262
+ <!-- 需要多露几个时再改,勿低于 2(否则「更多」几乎占满) -->
263
+ <ReTableOperate :list="operateButtons" :row="row" :index="$index" :limit="4" />
264
+ ```
265
+
266
+ `OperateButton` 常用字段:`label`、`type`、`icon`、`auth`、`show`、`disabled`、`onClick`(见组件 `type.ts`)。危险操作用 `type: 'danger'`;权限写 `auth`,勿在列模板里 `v-if` 角色。
267
+
268
+ 操作列 `width`:按钮多时适当加宽(如 160~220),仍依赖 `limit` 折叠,禁止无限加宽硬塞。
269
+
241
270
  ## 列表 → 详情/编辑
242
271
 
243
272
  有独立详情/编辑路由时:**必须同时命中并深读 `detail-page`**。禁止只抄下面的 `toDetail` 就交卷。
@@ -349,4 +378,5 @@ async function onSubmit() {
349
378
  | 只写 `toDetail`、详情路由缺 `activePath` | 三件套整段落盘(见 detail-page) |
350
379
  | 裸 `router.push` 开详情 | `toDetail` + meta(见 detail-page) |
351
380
  | `ReTableOperate :buttons` | `:list` |
381
+ | 操作列手写多颗 `el-button` / 自造更多菜单 | `ReTableOperate`;过多靠 `limit`(默认 3)进「更多」 |
352
382
  | `@show-collapse` | `@should-show-collapse` |
@@ -14,7 +14,8 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
14
14
  | **未调用设计 / 无 handoff** | 保持模版出厂令牌与 `platform-config`(主色 `#409EFF`、壳 64/208/40、margin 8、`ShowModel: chrome` 等)。**禁止**为「看起来像设计」而改出厂 |
15
15
  | **有 design-handoff/v1 或用户要求按设计落地** | 以**设计规范**为准全量回填 `design-tokens` + 配置;设计 JSON/规范未给出的字段**保留出厂**;代码层须已消费 `var(--token)`,改令牌即全局生效 |
16
16
 
17
- 跨编辑器一致:本协议 + 模版 `design-tokens.scss` 注释 + `handoff-output.md` 字段名对齐;禁止只改文档不改令牌、或只改裸 px 不改令牌。
17
+ 跨编辑器一致:设计侧 `handoff-output.md`(**JSON 字段形状**)+ 本文件(**→ 模版映射**)+ 模版 `design-tokens.scss` 注释对齐。
18
+ **分工**:设计师只改视觉规范正文,不维护本映射表;规范装进不了现有 JSON 时,由研发扩 `handoff-output` Schema 并同步改本文件。禁止只改文档不改令牌、或只改裸 px 不改令牌。
18
19
 
19
20
  ## 触发
20
21
 
@@ -64,10 +65,13 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
64
65
  | `shell.sidebar` | `platform-config.json` → `Theme` + 侧栏令牌 | `dark-gradient` → 深色侧栏主题(如 `default`)+ 写入 `--sidebar-*`;`light` → 浅色侧栏,勿套深色渐变 |
65
66
  | `shell.dataTheme` | `html[data-theme]` / 配置 | 有则用;无则按 sidebar/contentMode 推断,写回执 |
66
67
  | `shell.contentMode` | 内容区默认亮暗 | 与 DarkMode / 用户确认对齐 |
67
- | `shell.showModel` | `platform-config.json` → **`ShowModel`** | 设计落地时**必须** `"card"` |
68
+ | `shell.showModel` | `platform-config.json` → **`ShowModel`** | **以 JSON 为准**写入(设计当前默认 **`line`**;旧稿可能为 `card`) |
68
69
  | `shell.contentMargin` | `--layout-content-padding`(及桥接 `--vts-margin`) | 数字 px,如 `24`(模版出厂常为 **8**;**有 handoff 才覆盖**) |
69
70
 
70
- 落地 `card` 时同步:`ShowModel: "card"` + `$storage.configure.showModel`(或 bump `Version` 清缓存)+ 按下表写 `--vts-tag-card-*`。
71
+ 写入 `ShowModel` 后同步 `$storage.configure.showModel`(或 bump `Version` 清缓存)。
72
+ - **`card`**:写 `--vts-tag-card-*`(见 geometry)
73
+ - **`line`**:无容器文字页签(见 `notes` / `homeTabSize` / `tagDividerWidth`);模版若尚未实现该枚举 → 回执「待实现 line」,**禁止**静默改成 `card`;可先落令牌与配置,页签样式单开任务
74
+ - **`chrome` / `smart`**:仅当 JSON 明确要求时写入
71
75
 
72
76
  ### `geometry` → 令牌
73
77
 
@@ -78,9 +82,11 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
78
82
  | `siderWidth` | `--sidebar-width` / `--layout-sider-width` |
79
83
  | `siderCollapsedWidth` | `--sidebar-collapsed-width` / `--layout-sider-collapsed-width` |
80
84
  | `contentPadding` / `shell.contentMargin` | `--layout-content-padding` → `--vts-margin`(不一致时以 `contentMargin` 为准并回执) |
81
- | `tagCardHeight` | `--vts-tag-card-height` |
82
- | `tagCardRadius` | `--vts-tag-card-radius` |
83
- | `tagCardGap` | `--vts-tag-card-gap` |
85
+ | `tagCardHeight` | `--vts-tag-card-height`(`showModel=card`) |
86
+ | `tagCardRadius` | `--vts-tag-card-radius`(`showModel=card`) |
87
+ | `tagCardGap` | `--vts-tag-card-gap`(`showModel=card`) |
88
+ | `homeTabSize` | 首页纯图标页签边长(`showModel=line`,常见 40) |
89
+ | `tagDividerWidth` | 页签间竖分割线宽(`showModel=line`,常见 1) |
84
90
 
85
91
  可选(设计组件规范提及或 handoff.notes 给出时写入):
86
92
 
@@ -147,30 +153,35 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
147
153
 
148
154
  ### 页签风格(ShowModel)
149
155
 
150
- 模版支持三种:`smart`(灵动)/ `chrome`(谷歌)/ `card`(卡片·设计规范)。
156
+ 模版出厂常见:`smart` / `chrome` / `card`。设计 handoff 当前默认 **`line`**(无容器文字页签,见上游 `handoff-output.md`)。
151
157
 
152
158
  | 场景 | `ShowModel` |
153
159
  |------|-------------|
154
- | 模版出厂、未落地设计 | 保持项目现有值(常见 `chrome` / `smart`),**勿强行改** |
155
- | 设计规范 / handoff 落地 | **必须**切到 `card`(对齐设计 TDesign 卡片页签) |
160
+ | 模版出厂、未落地设计 | 保持项目现有值,**勿强行改** |
161
+ | 设计 handoff 落地 | **写入 JSON 的 `shell.showModel`**(默认 `line`;旧 JSON 可能为 `card`) |
162
+ | JSON=`line` 且模版无实现 | 回执待实现;勿改写成 `card` |
156
163
  | 用户在设置面板手动切换 | 以用户选择为准 |
157
164
 
158
165
  侧栏派生(`shell.sidebar === "dark-gradient"` 时):
159
166
 
167
+ > **视觉权威**:`page-templates` 规定深色侧栏底为 **`#001529` 纯色**,菜单激活为 **`--primary-color` 纯色**(禁止把激活态做成渐变)。
168
+ > 协议字段名仍叫 `dark-gradient`(表示「深色侧栏模式」相对 `light`);**落地色值以 page-templates 为准**,勿再套用旧版「主色阶拼纵向渐变」公式。
169
+
160
170
  ```scss
161
- --sidebar-bg: linear-gradient(180deg, color-mix(in srgb, var(--primary-8) 88%, var(--primary-7)) 0%, var(--primary-9) 52%, color-mix(in srgb, var(--primary-9) 90%, #000) 100%);
162
- --sidebar-logo-bg: linear-gradient(135deg, color-mix(in srgb, var(--primary-7) 70%, var(--primary-8)) 0%, var(--primary-8) 100%);
163
- --sidebar-border-color: color-mix(in srgb, var(--primary-6) 22%, transparent);
171
+ --sidebar-bg: #001529;
172
+ --sidebar-logo-bg: #002140;
173
+ --sidebar-border-color: transparent;
164
174
  --sidebar-menu-text: rgb(255 255 255 / 65%);
165
175
  --sidebar-menu-text-hover: #fff;
166
176
  --sidebar-menu-active-text: #fff;
167
- --sidebar-menu-hover-bg: color-mix(in srgb, var(--primary-5) 18%, transparent);
168
- --sidebar-menu-active-bg: var(--primary-6);
169
- --sidebar-submenu-bg: color-mix(in srgb, var(--primary-9) 82%, #000);
170
- --sidebar-active-indicator: var(--primary-5);
177
+ --sidebar-menu-hover-bg: rgb(255 255 255 / 8%);
178
+ --sidebar-menu-active-bg: var(--primary-color); /* 纯色主色,非渐变 */
179
+ --sidebar-submenu-bg: color-mix(in srgb, #001529 82%, #000);
180
+ --sidebar-active-indicator: var(--primary-color);
171
181
  ```
172
182
 
173
183
  `theme.scss`:`--vts-theme-menu-bg: var(--sidebar-bg);` 等 → `layout-theme`。
184
+ 自检:侧栏 computed 背景为 `#001529`(或 `var(--sidebar-bg)`);激活块 = `--primary-color` / `brandPrimary`。
174
185
 
175
186
  ---
176
187
 
@@ -180,7 +191,7 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
180
191
  ## 规范识别回执
181
192
  - 来源形态:design-handoff/v1 JSON | 交接块 | 令牌 CSS | 混合
182
193
  - 主题:{themeName} / {themeId} / 主色 {brandPrimary}
183
- - ShowModel:card(将写入)| 保持现有
194
+ - ShowModel:{json.showModel,如 line/card}(将写入)| 保持现有 | line 待实现
184
195
  - 几何:header {n} / tabs {n} / margin {n}
185
196
  - 主色阶:完整 10 级 | 仅 brand(待确认色阶)
186
197
  - 侧栏:dark-gradient | light
@@ -195,7 +206,7 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
195
206
  2. 规范识别回执
196
207
  3. A→E(按映射表写)
197
208
  4. F 冲突核对
198
- 5. 验证侧栏 / 主色 / 卡片页签 / 内容边距
209
+ 5. 验证侧栏 / 主色 / 页签(按 JSON `showModel`)/ 内容边距
199
210
  6. 提醒清 `localStorage`(改了 `EpThemeColor` / `ShowModel` / `Version` 时)
200
211
  7. 若同轮还有业务需求 → 再写/改 views(仅样式任务则到此结束)
201
212
 
@@ -211,7 +222,7 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
211
222
  - 侧栏:深色渐变 | 浅色
212
223
  - 内容区默认:亮色 | 暗黑
213
224
  - 主色:`#HEX`
214
- - ShowModel:`card`(设计落地时)| `smart` | `chrome`(未落地设计时保留模版默认)
225
+ - ShowModel:以设计为准(当前规范默认 `line`;旧稿 `card`)| `smart` | `chrome`(未落地设计时保留模版默认)
215
226
 
216
227
  设计令牌 CSS 须含主色阶,并**建议含组件尺寸三档**:
217
228
 
@@ -251,8 +262,8 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
251
262
  | 侧栏宽 / 收起 | `--sidebar-width` / `--sidebar-collapsed-width` | 208 / 64 |
252
263
  | 内容区内边距 | `--layout-content-padding` → `--vts-margin` | 出厂 8;设计常 24 |
253
264
  | 页脚高 | `--layout-footer-height` | 48 |
254
- | 页签风格 | `ShowModel: card` + `--vts-tag-card-*` | 未落地勿改 |
255
- | 卡片页签关闭色 | `--error-color` / `--error-6`、`--vts-tag-card-close-*` | `#F5222D` |
265
+ | 页签风格 | `ShowModel` = JSON `shell.showModel`(默认 `line`;`card` 时写 `--vts-tag-card-*`) | 未落地勿改 |
266
+ | 页签关闭/错误色 | `--error-color` / `--error-6`;`card` 时尚有 `--vts-tag-card-close-*` | `#F5222D` |
256
267
 
257
268
  ### B. 色板与文字
258
269
 
@@ -302,7 +313,7 @@ tags: [handoff, design-tokens, upstream, artifacts, json]
302
313
 
303
314
  | 条件 | 处理 |
304
315
  |------|------|
305
- | 用户要求按设计落地,但未切 `ShowModel: card` | 硬失败:补写配置 |
316
+ | 用户要求按设计落地,但未写入 JSON 中的 `shell.showModel` | 硬失败:按 JSON 补写配置(默认常为 `line`) |
306
317
  | JSON 有 `primaryScale` 但未写入 `--primary-0..9` | 硬失败 |
307
318
  | 用 `#F56C6C` 或未映射的 EP danger 代替 `tokens.error` | 硬失败:改为 `#F5222D` / `--error-color` |
308
319
  | 改了 `--layout-content-padding` / `--vts-margin` 后列表仍用 `100vh` 减顶栏定高 | 硬失败:迁 flex/`vts-page-card` |
@@ -405,7 +405,7 @@ tags: [design-system, design-tokens, antd, semi, arco, vuetify, findesign, eleme
405
405
  | `sidebar.scss` | 侧栏执行 | 背景用 `background: var(--vts-theme-menu-bg)`(支持渐变);激活块 `--vts-theme-menu-active-bg`;边框 `--vts-sidebar-border-color` |
406
406
  | `dark.scss` | 暗黑侧栏 | **禁止** `sidebar-container { background-color: var(--el-bg-color) }` 压盖渐变;改用 `background: var(--vts-theme-menu-bg)` |
407
407
  | `platform-config.json` | 顶栏/主题 | `EpThemeColor` = 规范 primary-5;深色侧栏时 `Theme: default`(或对应 data-theme) |
408
- | `layout/components/lay-tag` | 页签栏高度 / 风格 | 高度走 `--vts-tabs-height`;设计落地时 `ShowModel: card`,视觉令牌 `--vts-tag-card-*` |
408
+ | `layout/components/lay-tag` | 页签栏高度 / 风格 | 高度走 `--vts-tabs-height`;设计落地写 JSON `ShowModel`(默认 `line`;`card` 时用 `--vts-tag-card-*`) |
409
409
  | `layout/components/lay-navbar` 等 | 顶栏内容区 | 行高/高度跟随 `--vts-bar-height`,禁止残留 `h-38` 等旧模版裸值 |
410
410
 
411
411
  4. 暗黑模式:在 `dark.scss` 内为新增令牌补暗色覆盖(`--vts-table-header-bg`、`--vts-message-bg`、`--vts-dialog-bg` 等),遵守 `layout-theme` 第三节规则。
@@ -434,7 +434,7 @@ height: \d+px、padding: \d+px、font-size: \d+px、行内 style="...颜色 hex"
434
434
  - [ ] 定高列表页:`el-card.vts-page-card` + `useTableSearch` 的 `tableHeight`;换 `--card-padding` 后列表仍无外层滚动条、分页完整、仅表格体内滚动
435
435
  - [ ] 表单标签:computed font-weight 为规范值(AntD/Semi = 400,非 700)
436
436
  - [ ] 弹窗:`--ds-dialog-bg` 为 **主题色轻渐变**(`primary-bg → component-bg`),非写死蓝渐变;`ElMessageBox` 内容区用 `--message-box-content-padding`(比 `el-dialog` body 更紧凑)
437
- - [ ] 侧栏:深色主题下 DevTools 检查 `.sidebar-container` computed `background` 为 **渐变**(非单色 `#001529`);激活项块色 = `--primary-6`;Logo 区 = `--sidebar-logo-bg`
437
+ - [ ] 侧栏:深色主题下 DevTools 检查 `.sidebar-container` computed `background` 为 **`#001529`**(`var(--sidebar-bg)`,非旧版主色纵向渐变);激活项块色 = `--primary-color` / `brandPrimary`;Logo 区 = `--sidebar-logo-bg`
438
438
  - [ ] 第四节冲突清单全部处理完毕(逐条回填)
439
439
  - [ ] Step 7 存量扫描已执行且结果已输出
440
440
 
@@ -617,7 +617,7 @@ height: \d+px、padding: \d+px、font-size: \d+px、行内 style="...颜色 hex"
617
617
  | `--el-menu-item-height` | 菜单项行高 / menuItemHeight / navItemHeight |
618
618
  | `--sidebar-collapse-bar-height` | 侧栏折叠条高度 / collapseTriggerHeight |
619
619
  | `--primary-0`~`--primary-9` | 会话令牌 CSS 块 / primaryScale / 10 级主色 |
620
- | `--sidebar-bg` / `--sidebar-menu-active-bg` | 侧栏渐变底 / menuActiveBg / siderBackground |
620
+ | `--sidebar-bg` / `--sidebar-menu-active-bg` | 侧栏深色底 `#001529` / 菜单激活纯色 `primary-color` |
621
621
 
622
622
  #### 7.5.3 壳层令牌变更后的连锁巡检(按令牌名,不写死像素)
623
623
 
@@ -109,7 +109,7 @@ src/directives/
109
109
 
110
110
  ## 关键约定
111
111
 
112
- 1. 权限指令优先使用 `v-auth`;列表行操作优先使用 `ReTableOperate` 的 `auth` 字段。
112
+ 1. 权限指令优先使用 `v-auth`;列表行操作优先使用 `ReTableOperate` 的 `auth` 字段(按钮过多用组件 `limit` 默认 3 折叠进「更多」,见 `crud-pages`)。
113
113
  2. `v-copy` 的值更新后自动同步,不需要手动重新绑定。
114
114
  3. `v-auto-font` 依赖 `ResizeObserver` 监听容器宽度变化。
115
115
  4. `v-compare` 全套能力按 **data-compare** 模块生成,禁止编造数值比较数组语法。
@@ -336,7 +336,7 @@ $sideBarWidth: var(--sidebar-width, 208px);
336
336
  1. 页面组件通过 `<router-view>` 嵌套在布局内渲染。
337
337
  2. 布局切换通过 store 中的 `layout` 字段控制。
338
338
  3. 侧边栏菜单数据来源于路由配置中的 `meta` 信息。
339
- 4. 标签页(TagsView)三种风格:`smart`(灵动)/ `chrome`(谷歌)/ `card`(卡片·设计规范);由 `configure.showModel` / `platform-config.json` 的 `ShowModel` 控制。设计 handoff 落地时用 `card`。
339
+ 4. 标签页(TagsView):出厂常见 `smart` / `chrome` / `card`;由 `configure.showModel` / `platform-config.json` 的 `ShowModel` 控制。设计 handoff 当前默认 **`line`**(无容器文字页签,见 `design-handoff`);旧设计稿可能仍为 `card`。
340
340
 
341
341
  ### 页签风格(ShowModel)
342
342
 
@@ -345,8 +345,9 @@ $sideBarWidth: var(--sidebar-width, 208px);
345
345
  | `smart` | 灵动 | 底部指示条动画 |
346
346
  | `chrome` | 谷歌 | Chrome 梯形页签(模版常见出厂) |
347
347
  | `card` | 卡片 | 关闭钮绝对定位不占位;显现时用不透明页签底盖字;再 hover 关闭钮:圆形底 `--layout-bg`/`--bg-layout` + 图标 `--error-6`/`--error-color`=`#F5222D`(勿用 EP `#F56C6C` 偏橘) |
348
+ | `line` | 线型/文字 | 设计规范当前默认:无容器、高满栏、分割线、关闭始终可见、首页纯图标;**模版实现前** handoff 仍写入该值并回执待实现 |
348
349
 
349
- 设计落地改色/几何时优先改 `--vts-tag-card-*`(见 `index.scss` `:root`),勿再复制一套选择器。
350
+ `card` 改色/几何优先改 `--vts-tag-card-*`(见 `index.scss` `:root`),勿再复制一套选择器。`line` 实现后另挂对应令牌,勿冒充 `card`。
350
351
 
351
352
  ### 顶栏 / 页签高度
352
353
 
@@ -202,7 +202,7 @@
202
202
  | **ReSmsCode** | 短信倒计时 | `ReSmsCode/` | `verify-captcha` |
203
203
  | **ReSvgIcon** | SVG / Iconify | `ReSvgIcon/` | `icons` |
204
204
  | **ReTableBar** | 表格工具栏 | `ReTableBar/` | `crud-pages` |
205
- | **ReTableOperate** | 行操作 | `ReTableOperate/` | `crud-pages` |
205
+ | **ReTableOperate** | 行操作(`limit` 默认 3,超出进「更多」) | `ReTableOperate/` | `crud-pages` |
206
206
  | **ReText** | 文本省略 | `ReText/` | `layout-theme` |
207
207
  | **ReTimeLine** | 时间轴 | `ReTimeLine/` | `detail-page` / 业务 |
208
208
  | **ReTreeLine** | 树连线 | `ReTreeLine/` | `tree-table` |