@microi.net/cli 5.8.0 → 5.8.2
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/.codebuddy-plugin/marketplace.json +2 -2
- package/.codebuddy-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.workbuddy-plugin/marketplace.json +2 -2
- package/.workbuddy-plugin/plugin.json +1 -1
- package/assets/build-meta.json +5 -5
- package/cordis.patch.yml +1 -1
- package/package.json +1 -1
- package/scripts/mcp-server.js +99 -99
- package/scripts/microi-skills.meta.json +285 -282
- package/skills/.microi-skills-version.json +2 -2
- package/skills/.progressive-disclosure-manifest.json +432 -432
- package/skills/README.md +2 -1
- package/skills/ai-engine/references/ai-employees.md +4 -0
- package/skills/ai-platform-governance/SKILL.md +8 -8
- package/skills/ai-platform-governance/references/progressive-01-/345/212/237/350/203/275/345/274/200/345/205/263.md +9 -9
- package/skills/app-store/SKILL.md +53 -3
- package/skills/microi/SKILL.md +14 -0
- package/skills/microi-ai-application/SKILL.md +9 -0
- package/skills/microi-client-frontend/SKILL.md +5 -5
- package/skills/microi-client-frontend/references/progressive-01-3-/345/212/250/346/200/201/346/214/211/351/222/256/347/263/273/347/273/237.md +3 -3
- package/skills/microi-client-frontend/references/progressive-02-8-/350/277/220/350/241/214/346/227/266/351/253/230/351/242/221/345/235/221/345/244/215/347/233/230.md +4 -4
- package/skills/microi-client-frontend/references/progressive-03-vue3-/345/211/215/347/253/257/345/276/256/346/234/215/345/212/241/345/256/277/344/270/273/350/247/204/345/210/231.md +3 -3
- package/skills/microi-codex/SKILL.md +9 -0
- package/skills/microi-deployment/SKILL.md +9 -0
- package/skills/microi-deployment/references/deployment-matrix.md +8 -0
- package/skills/microi-form-layout/SKILL.md +6 -6
- package/skills/microi-form-layout/references/progressive-01-3-/344/270/211/347/247/215/345/210/206/347/273/204/347/232/204/345/255/230/345/202/250/344/270/216/351/205/215/347/275/256.md +3 -3
- package/skills/microi-frontend-sdk/SKILL.md +6 -6
- package/skills/microi-frontend-sdk/references/progressive-01-token-/345/275/223/345/211/215/347/231/273/345/275/225/347/224/250/346/210/267/344/270/216/345/275/223/345/211/215/347/273/210/347/253/257/347/231/273/345/275/225/345/215/217/350/256/256.md +7 -7
- package/skills/microi-mobile-app-quality/SKILL.md +12 -8
- package/skills/microi-mobile-app-quality/references/progressive-01-4-/351/207/215/350/246/201/346/214/211/351/222/256/345/277/205/351/241/273/345/270/246/345/233/276/346/240/207.md +10 -10
- package/skills/microi-mobile-app-quality/references/progressive-02-9-/344/270/273/351/242/230/345/210/207/346/215/242/345/277/205/351/241/273/347/234/237/345/256/236/344/270/224/345/205/250/345/261/200/347/224/237/346/225/210.md +4 -4
- package/skills/microi-system-delivery/SKILL.md +5 -5
- package/skills/microi-system-delivery/references/progressive-01-/346/240/207/345/207/206/345/267/245/344/275/234/346/265/201.md +1 -1
- package/skills/microi-system-delivery/references/progressive-02-/350/207/252/345/212/250/345/214/226/346/265/213/350/257/225/345/277/205/351/241/273/350/246/206/347/233/226/347/232/204/345/235/221.md +6 -4
- package/skills/microi-ui/SKILL.md +6 -6
- package/skills/microi-ui/references/progressive-01-/347/247/273/345/212/250/347/253/257/345/234/272/346/231/257/350/223/235/345/233/276.md +5 -5
- package/skills/microi-uniapp-frontend/SKILL.md +10 -10
- package/skills/microi-uniapp-frontend/references/progressive-01-/347/247/273/345/212/250/347/253/257/345/210/206/347/261/273-/345/217/214/346/240/217/345/210/227/350/241/250/347/213/254/347/253/213/346/273/232/345/212/250.md +7 -7
- package/skills/microi-uniapp-frontend/references/progressive-02-/345/205/263/351/224/256/344/270/232/345/212/241/350/265/204/344/272/247/344/270/215/345/276/227/351/273/230/350/256/244/351/200/211/344/270/255.md +10 -10
- package/skills/page-engine/SKILL.md +8 -8
- package/skills/page-engine/references/progressive-01-/346/211/200/346/234/211/347/273/204/344/273/266/347/261/273/345/236/213.md +3 -3
- package/skills/page-engine/references/progressive-02-/347/211/210/346/234/254/345/216/206/345/217/262-/345/271/266/345/217/221/344/277/235/345/255/230/344/270/216/345/233/236/346/273/232.md +4 -4
- package/skills/playwright-e2e/SKILL.md +8 -8
- package/skills/playwright-e2e/references/progressive-01-/345/205/250/350/207/252/345/212/250/347/231/273/345/275/225-/345/205/215/351/252/214/350/257/201/347/240/201-/344/275/206/344/270/215/345/205/215/345/257/206/347/240/201-/345/277/205/350/257/273.md +5 -5
- package/skills/playwright-e2e/references/progressive-02-/346/226/207/345/255/227/345/257/271/346/257/224/345/272/246/344/270/216/345/217/257/350/257/273/346/200/247/350/207/252/345/212/250/345/214/226/346/243/200/346/237/245-/345/277/205/345/201/232.md +3 -3
- package/skills/playwright-e2e/references/progressive-03-microi-helper-/346/250/241/346/235/277.md +7 -7
- package/skills/playwright-e2e/references/progressive-04-ci-/345/273/272/350/256/256.md +4 -4
- package/skills/system-observability/SKILL.md +3 -0
- package/skills/ui-design/SKILL.md +7 -7
- package/skills/ui-design/references/progressive-01-/351/242/234/350/211/262/344/275/223/347/263/273-css-variables-/346/224/257/346/214/201/344/270/273/351/242/230/345/210/207/346/215/242.md +2 -2
- package/skills/ui-design/references/progressive-02-/345/255/227/344/275/223.md +3 -3
- package/skills/ui-design/references/progressive-03-/345/212/250/346/225/210/350/247/204/350/214/203-/344/270/260/345/257/214/344/275/206/344/270/215/345/215/241.md +2 -2
- package/skills/ui-design/references/progressive-04-/347/273/204/344/273/266/351/243/216/346/240/274/351/200/237/346/237/245.md +1 -1
- package/skills/ui-design/references/progressive-05-/347/247/273/345/212/250/347/253/257/344/270/223/347/224/250/350/247/204/350/214/203.md +3 -3
- package/skills/ui-design/references/progressive-06-/344/270/273/351/242/230/345/210/207/346/215/242/345/256/236/347/216/260.md +2 -2
- package/skills/ui-design/references/progressive-07-/351/200/237/346/237/245-/344/273/216/345/244/264/346/220/255/345/273/272/344/270/200/344/270/252/347/247/273/345/212/250/347/253/257/351/241/265/351/235/242.md +4 -4
- package/skills/ui-design/references/progressive-08-/350/241/250/345/215/225/345/210/206/347/273/204/350/247/204/350/214/203-tabs-vs-collapsegroup-/345/274/272/345/210/266.md +5 -5
- package/skills/unity-integration/references/ai-app-delivery.md +16 -0
- package/skills/v8-api-config/SKILL.md +6 -0
- package/skills/v8-crud-api/SKILL.md +9 -7
- package/skills/v8-crud-api/references/progressive-01-/346/237/245/350/257/242/345/210/227/350/241/250-/345/210/206/351/241/265.md +8 -8
- package/skills/v8-crud-api/references/progressive-02-where-/346/235/241/344/273/266/350/257/255/346/263/225/351/200/237/346/237/245.md +2 -2
- package/skills/v8-export-import/SKILL.md +4 -4
- package/skills/v8-export-import/references/progressive-01-excellayout-/351/253/230/347/272/247/350/207/252/347/224/261/345/270/203/345/261/200.md +3 -3
- package/skills/v8-export-import/references/progressive-02-powerpoint-/345/257/274/345/207/272.md +4 -4
- package/skills/v8-export-import/references/progressive-03-/345/256/211/345/205/250-/346/200/247/350/203/275/346/263/250/346/204/217.md +1 -1
- package/skills/v8-file-upload/SKILL.md +25 -4
- package/skills/v8-file-upload/references/progressive-01-/345/205/254/346/234/211/346/241/266-vs-/347/247/201/346/234/211/346/241/266.md +3 -3
- package/skills/v8-file-upload/references/progressive-02-office-/346/226/207/344/273/266/345/234/250/347/272/277/347/274/226/350/276/221/347/211/210/346/234/254/345/217/267/350/247/204/345/210/231.md +3 -3
- package/skills/v8-frontend-events/SKILL.md +6 -6
- package/skills/v8-frontend-events/references/progressive-01-/345/210/227/350/241/250/344/272/213/344/273/266.md +5 -5
- package/skills/v8-http-integration/SKILL.md +4 -4
- package/skills/v8-http-integration/references/progressive-01-get-/350/257/267/346/261/202.md +7 -7
- package/skills/v8-http-integration/references/progressive-02-/351/224/231/350/257/257/345/244/204/347/220/206/346/250/241/345/274/217.md +2 -2
- package/skills/v8-image-processing/SKILL.md +1 -1
- package/skills/v8-menu-buttons/SKILL.md +4 -4
- package/skills/v8-menu-buttons/references/progressive-01-2-/346/214/211/351/222/256/345/257/271/350/261/241-schema.md +4 -4
- package/skills/v8-menu-buttons/references/progressive-02-8-/346/250/241/345/274/217-f-/345/220/216/345/217/260/344/273/273/345/212/241/346/214/211/351/222/256-/351/225/277/344/273/273/345/212/241.md +5 -5
- package/skills/v8-menu-buttons/references/progressive-03-10-/345/217/215/346/250/241/345/274/217-/351/201/277/345/205/215.md +3 -3
- package/skills/v8-mq-mqtt/SKILL.md +2 -2
- package/skills/v8-mq-mqtt/references/mqtt-production.md +1 -1
- package/skills/v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-/347/211/251/350/201/224/347/275/221.md +1 -1
- package/skills/v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs +1 -1
- package/skills/v8-saas-multi-tenant/SKILL.md +6 -0
- package/skills/v8-security/SKILL.md +15 -5
- package/skills/v8-security/references/progressive-01-2-/346/235/203/351/231/220/346/240/241/351/252/214.md +3 -3
- package/skills/v8-security/references/progressive-02-7-/346/227/245/345/277/227/350/256/260/345/275/225.md +8 -6
- package/skills/v8-table-event/SKILL.md +5 -5
- package/skills/v8-table-event/references/progressive-01-informv8-js-/350/241/250/345/215/225/346/211/223/345/274/200/344/272/213/344/273/266.md +6 -6
- package/skills/v8-table-event/references/progressive-02-/345/211/215/347/253/257/344/272/213/344/273/266/345/220/215-v8-eventname-/345/217/257/350/203/275/347/232/204/345/200/274.md +2 -2
- package/skills/v8-workflow/SKILL.md +16 -7
- package/skills/v8-workflow/references/progressive-01-/350/212/202/347/202/271/345/274/200/345/247/213-v8-/344/272/213/344/273/266.md +7 -7
- package/skills/workspace-conventions/SKILL.md +16 -7
- package/skills/workspace-conventions/references/progressive-01-/347/211/210/346/234/254/346/233/264/346/226/260/346/227/245/345/277/227/344/277/235/346/212/244/350/247/204/345/210/231-/345/274/272/345/210/266.md +5 -4
- package/skills/workspace-conventions/references/progressive-02-microi-net-api-/346/234/254/345/234/260/345/220/257/345/212/250/347/272/246/345/256/232.md +14 -14
- package/skills/workspace-conventions/references/progressive-03-cli-/344/270/216-ide-/346/217/222/344/273/266/351/224/231/347/211/210/345/205/261/345/255/230/347/272/246/345/256/232.md +1 -1
|
@@ -33,7 +33,7 @@ Microi 吾码低代码提供 **三种** 表单分组能力,但每种都有明
|
|
|
33
33
|
- 配置表采用“表级 Tab + Tab 内 CollapseGroup”时,CollapseGroup 必须与成员字段写入同一个 `Tab`,并用连续 `Sort` 保证作用范围在下一个布局节点前结束。发布前必须打开真实编辑表单验证,不能只凭元数据字符串判断布局成功。
|
|
34
34
|
|
|
35
35
|
<!-- microi-progressive:begin -->
|
|
36
|
-
<!-- microi-progressive:chunk id=microi-form-layout-000 sha256=
|
|
36
|
+
<!-- microi-progressive:chunk id=microi-form-layout-000 sha256=cade6a415454aa04f5fcf840e6d9df1323ac9751c0e3c8e1b07b360007413819 -->
|
|
37
37
|
## 1. 三种分组能力速查
|
|
38
38
|
|
|
39
39
|
| 能力 | 存储位置 | 控件 | 核心作用 | 适用场景 |
|
|
@@ -44,7 +44,7 @@ Microi 吾码低代码提供 **三种** 表单分组能力,但每种都有明
|
|
|
44
44
|
| **D. 不分组(默认平铺)** | 无 | — | 全部字段在第一屏 | 总有效表单行 ≤ 6、没有复杂控件,且没有必须强调的业务分组 |
|
|
45
45
|
|
|
46
46
|
<!-- /microi-progressive:chunk -->
|
|
47
|
-
<!-- microi-progressive:chunk id=microi-form-layout-001 sha256=
|
|
47
|
+
<!-- microi-progressive:chunk id=microi-form-layout-001 sha256=f43f8c6f1c156ef3669f0c1f9a9d9d2cb7baf630d0b0cb2f48307a31f3f82ae2 -->
|
|
48
48
|
## 2. 黄金决策流程(AI 必须按此顺序判断)
|
|
49
49
|
|
|
50
50
|
### 2.1 先算“有效表单行”,禁止只数字段
|
|
@@ -95,7 +95,7 @@ Q1: 核心可见字段数、子表和强任务域?
|
|
|
95
95
|
| 工作流审批表(≤10 字段) | D. 不分组 | 禁止使用 Tab |
|
|
96
96
|
|
|
97
97
|
<!-- /microi-progressive:chunk -->
|
|
98
|
-
<!-- microi-progressive:chunk id=microi-form-layout-002 sha256=
|
|
98
|
+
<!-- microi-progressive:chunk id=microi-form-layout-002 sha256=9165f561ba90696ce130d24f71a0e56c521b5f8935eac2ddcffb852f3af5d9b2 -->
|
|
99
99
|
## 4. AI 生成表单布局的标准动作
|
|
100
100
|
|
|
101
101
|
### 4.1 必做顺序
|
|
@@ -137,7 +137,7 @@ Q1: 核心可见字段数、子表和强任务域?
|
|
|
137
137
|
V8 事件中可用 `V8.HideFormTab('tabId')` / `V8.ShowFormTab('tabId')` / `V8.ClickFormTab('tabId')` 动态控制 Tab 显隐和默认选中。
|
|
138
138
|
|
|
139
139
|
<!-- /microi-progressive:chunk -->
|
|
140
|
-
<!-- microi-progressive:chunk id=microi-form-layout-003 sha256=
|
|
140
|
+
<!-- microi-progressive:chunk id=microi-form-layout-003 sha256=8da3bfbd34b7890c3796c47f71c7f4ccef13f16e5da48c3a0a0e111f22fe150a -->
|
|
141
141
|
## 5. 必填与禁止
|
|
142
142
|
|
|
143
143
|
### 5.1 必填
|
|
@@ -167,7 +167,7 @@ V8 事件中可用 `V8.HideFormTab('tabId')` / `V8.ShowFormTab('tabId')` / `V8.C
|
|
|
167
167
|
- ❌ **禁止**用普通新增字段或通用表单数据写入创建布局节点;这类路径可能对目标业务表执行物理 DDL。
|
|
168
168
|
|
|
169
169
|
<!-- /microi-progressive:chunk -->
|
|
170
|
-
<!-- microi-progressive:chunk id=microi-form-layout-004 sha256=
|
|
170
|
+
<!-- microi-progressive:chunk id=microi-form-layout-004 sha256=539ae919554ca9eda5b5a26ac405181f601f4195f6a59baf1fd368d315987e6c -->
|
|
171
171
|
## 6. 验收清单
|
|
172
172
|
|
|
173
173
|
修改或新建表单布局后,AI 必须按以下顺序验收:
|
|
@@ -188,7 +188,7 @@ V8 事件中可用 `V8.HideFormTab('tabId')` / `V8.ShowFormTab('tabId')` / `V8.C
|
|
|
188
188
|
通常跳过这些运行态事件;未完成这一步不得直接判定为 Microi.Client 渲染缺陷。
|
|
189
189
|
|
|
190
190
|
<!-- /microi-progressive:chunk -->
|
|
191
|
-
<!-- microi-progressive:chunk id=microi-form-layout-005 sha256=
|
|
191
|
+
<!-- microi-progressive:chunk id=microi-form-layout-005 sha256=db6759bef83e520e5f137347070f85df1275e14dcbc742bebfdaac4da14be375 -->
|
|
192
192
|
## 9. 与其他 Skill 的关系
|
|
193
193
|
|
|
194
194
|
- 字段创建流程:`v8-table-event/SKILL.md` 写 InFormV8 / SubmitFormV8 等。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> 按需读取;本文件由 SKILL.md 的原章节无损拆分。
|
|
4
4
|
|
|
5
|
-
<!-- microi-progressive:chunk id=microi-form-layout-006 sha256=
|
|
5
|
+
<!-- microi-progressive:chunk id=microi-form-layout-006 sha256=a78b000a9fee46d8394b0b6cb186702e520ab513f7eff098f2226f1158e46970 -->
|
|
6
6
|
## 3. 三种分组的存储与配置
|
|
7
7
|
|
|
8
8
|
### 3.1 diy_table.Tabs(表级 Tab)
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
| 适合"互斥分组" | ✅ | ❌ |
|
|
115
115
|
|
|
116
116
|
<!-- /microi-progressive:chunk -->
|
|
117
|
-
<!-- microi-progressive:chunk id=microi-form-layout-007 sha256=
|
|
117
|
+
<!-- microi-progressive:chunk id=microi-form-layout-007 sha256=5944a965b1ac9a5c87a0e066af7f6489d2b5cd09e55fff7dc4e43d8d3a029fd6 -->
|
|
118
118
|
## 7. 反例参考(必须避免)
|
|
119
119
|
|
|
120
120
|
### 反例 1:MRP 运算 3 字段单独建 Tab
|
|
@@ -172,7 +172,7 @@ diy_table.Tabs = [
|
|
|
172
172
|
```
|
|
173
173
|
|
|
174
174
|
<!-- /microi-progressive:chunk -->
|
|
175
|
-
<!-- microi-progressive:chunk id=microi-form-layout-008 sha256=
|
|
175
|
+
<!-- microi-progressive:chunk id=microi-form-layout-008 sha256=1d93c83d865ef941f62c4e8e0dd6238489645bf53367b61e6e397543447dcdbd -->
|
|
176
176
|
## 8. 快速参考代码片段
|
|
177
177
|
|
|
178
178
|
### 8.1 MCP 创建表级 Tab
|
|
@@ -10,7 +10,7 @@ description: Microi 前端 SDK 使用规范,适用于 Vue 3、uni-app、H5、P
|
|
|
10
10
|
所有 Vue 3 前端项目都应使用 `microi.skills/microi.v8.js` 作为统一的 Microi 前端 SDK。新项目不要复制旧版 Vue2/Vuex 请求封装,也不要重新手写 token、上传、文件 URL、ApiEngine 或 FormEngine 层。
|
|
11
11
|
|
|
12
12
|
<!-- microi-progressive:begin -->
|
|
13
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-000 sha256=
|
|
13
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-000 sha256=06f944bc009a4e773ae6d5496d435d3e4a4fdb23d59107dac9cedffcfdf18f86 -->
|
|
14
14
|
## 必须采用的模式
|
|
15
15
|
|
|
16
16
|
将 SDK 复制到项目源码目录,通常是:
|
|
@@ -56,7 +56,7 @@ export function createApp() {
|
|
|
56
56
|
页面和业务接口模块应从项目请求模块导入已配置实例或薄封装函数,不要直接从标准 skill 文件导入。
|
|
57
57
|
|
|
58
58
|
<!-- /microi-progressive:chunk -->
|
|
59
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-001 sha256=
|
|
59
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-001 sha256=f1c2ab1fadc01dbe8ea4b9de98f7c02192c3f2cfed8b792fe62f8ef516b67d83 -->
|
|
60
60
|
## 必须委托 SDK 的能力
|
|
61
61
|
|
|
62
62
|
- `ApiEngine.Run`:直接调用 `/apiengine/{key}` 时使用 `V8.ApiEngine.Run(key, data)`。
|
|
@@ -71,7 +71,7 @@ export function createApp() {
|
|
|
71
71
|
`Microi.Client` 主后台运行时已内置前后端同构的 `V8.Http.Get/Post/Patch` 及对应 Response 方法;表单事件、按钮 V8 等宿主前端新代码必须优先使用 `V8.Http`,旧 `V8.Post/Get` 仅作兼容保留,其参数和兼容规则以 `v8-http-integration/SKILL.md` 为准。独立项目使用本 SDK、且不在主后台 V8 宿主中时,才使用 SDK 自身的小写 `V8.get/post`、`ApiEngine`、`FormEngine`;不要把它们与宿主旧版大写 `V8.Post/Get` 混为一谈,也不要假设浏览器可以绕过第三方接口的 CORS。
|
|
72
72
|
|
|
73
73
|
<!-- /microi-progressive:chunk -->
|
|
74
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-002 sha256=
|
|
74
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-002 sha256=713c6662f9300075831b51b56d219cd6a7562e01837ca1934de03e220dabb611 -->
|
|
75
75
|
## 登录与验证码封装
|
|
76
76
|
|
|
77
77
|
SDK 或项目请求模块必须提供登录所需的系统配置和验证码薄封装,不要让页面散落手写。
|
|
@@ -122,7 +122,7 @@ AI 生成的前端微服务不能假定永远在主平台 iframe/micro-app 宿
|
|
|
122
122
|
- 宿主额外传入 `permissionContext={sysMenuId,moduleEngineKey,diyTableId}`。SDK/服务层需要访问 FormEngine 时使用真实授权 `moduleEngineKey`;该对象不能代替后端权限,也不能成为放宽匿名接口的理由。
|
|
123
123
|
|
|
124
124
|
<!-- /microi-progressive:chunk -->
|
|
125
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-003 sha256=
|
|
125
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-003 sha256=d5d1984e6cd4efbb2340f984473146c66bb342d60bb571454c457f5673b1c68f -->
|
|
126
126
|
## 请求头规则
|
|
127
127
|
|
|
128
128
|
SDK 的 `buildHeaders` 必须集中处理所有请求头,不能让页面、业务 wrapper 或上传逻辑各自拼接租户和鉴权头。
|
|
@@ -134,7 +134,7 @@ SDK 的 `buildHeaders` 必须集中处理所有请求头,不能让页面、业
|
|
|
134
134
|
- 验收时检查真实网络请求:不得出现 `osclient: demo, demo`、`Authorization: Bearer xxx, Bearer xxx` 这类逗号合并值。
|
|
135
135
|
|
|
136
136
|
<!-- /microi-progressive:chunk -->
|
|
137
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-004 sha256=
|
|
137
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-004 sha256=af471c5be701b78f12dc037a4e1ce2289c6443c0921de1546659fefc29216ddd -->
|
|
138
138
|
## 上传规则
|
|
139
139
|
|
|
140
140
|
`V8.uploadFile` 是 Microi 前端唯一允许的上传入口。SDK 实现必须:
|
|
@@ -153,7 +153,7 @@ SDK 的 `buildHeaders` 必须集中处理所有请求头,不能让页面、业
|
|
|
153
153
|
当上传突然报 `移动端文件上传路径不合法!` 时,先检查实际 multipart 表单字段和请求头。在 Microi 移动端/会员 Token 流程中,后端会在 HDFS 上传前校验 `Path`;错误的 `Content-Type` 会导致后端读不到表单字段,并表现为路径错误。
|
|
154
154
|
|
|
155
155
|
<!-- /microi-progressive:chunk -->
|
|
156
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-005 sha256=
|
|
156
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-005 sha256=1a9d0a33adbff849decf01d114e72cad96f80a6122f0b281cecf9092bbcd0c42 -->
|
|
157
157
|
## 项目封装规则
|
|
158
158
|
|
|
159
159
|
面向业务页面的函数名要保持稳定。如果已有项目导出 `callEngine`、`formEngineGet`、`getImageUrl`、`parseImages` 或 `uploadFile`,保留这些导出,内部委托给 `V8`。这样既能统一 SDK,又能避免大面积改页面。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> 按需读取;本文件由 SKILL.md 的原章节无损拆分。
|
|
4
4
|
|
|
5
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-006 sha256=
|
|
5
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-006 sha256=e3a4f78365b0d189c55e03eb4cc1f36deaa39b3fe5580ccb4b7b77f8b443be8b -->
|
|
6
6
|
## Token、当前登录用户与当前终端登录协议
|
|
7
7
|
|
|
8
8
|
Microi 后端不是只保存一个全局 Token。每个租户、每个 `sys_user` 在 Redis 中维护一份 `CurrentToken`,其中 `CurrentUser` 表示平台当前登录用户,`Tokens` 表示该用户的多个当前终端登录。每个终端项至少包含 `Token`、`ClientType`、`Did`、`IP`、`CreateTime`、`UpdateTime`;退出、管理员清除登录信息、同终端重新登录或 Token 轮换都会影响该列表。
|
|
@@ -84,13 +84,13 @@ const result = await V8.refreshToken();
|
|
|
84
84
|
- 管理员调用 `ClearUserLoginInfo` 后,旧 Token 返回 `SessionMissing` 或等价明确原因,前端不再循环续签。
|
|
85
85
|
|
|
86
86
|
<!-- /microi-progressive:chunk -->
|
|
87
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-007 sha256=
|
|
87
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-007 sha256=32ff522b3d30d94eb6cc1747b1f1238e35c1c3d43091f3ce308067e320ecb2a4 -->
|
|
88
88
|
## 仅支持 Vue 3
|
|
89
89
|
|
|
90
90
|
新的 Microi 前端工作只支持 Vue 3。不要把 Vue2、Vuex、`Vue.prototype` 或 Vue2/uni-app 条件编译加入 `microi.v8.js`。状态管理属于项目本身,通常使用 Pinia 或本地组合函数;SDK 只负责平台访问、请求、鉴权、上传、资源 URL 和小工具。
|
|
91
91
|
|
|
92
92
|
<!-- /microi-progressive:chunk -->
|
|
93
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-008 sha256=
|
|
93
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-008 sha256=0c59d00b2e54dd61d194d6246dd787a456ab8f12d4abe6dc330b002f41d7ee26 -->
|
|
94
94
|
## Key-Value 枚举的跨端约定(强制)
|
|
95
95
|
|
|
96
96
|
- PC、UniApp、小程序和 Web 页面遇到简单枚举时,应从字段元数据或业务接口返回的公开 `{Key,Value}` 选项获取数据源;`Value` 只负责展示,`Key` 才能进入表单值、URL、缓存键和接口筛选参数。
|
|
@@ -99,7 +99,7 @@ const result = await V8.refreshToken();
|
|
|
99
99
|
- 兼容历史数据时,客户端可以短期识别旧 Value,但提交和新 URL 必须立即归一为 Key;长期迁移由服务端完成并回读验证。
|
|
100
100
|
|
|
101
101
|
<!-- /microi-progressive:chunk -->
|
|
102
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-009 sha256=
|
|
102
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-009 sha256=2e428f404342ad21af261e5f5876e34e2b9fc9455791bf0ad73ff4ad5b3e2ed0 -->
|
|
103
103
|
## 界面层独立
|
|
104
104
|
|
|
105
105
|
SDK 不得导入 Element Plus、uni-ui、uView、TDesign、FirstUI、Pinia、Vue Router 或 axios。界面反馈通过可配置适配器提供:
|
|
@@ -112,7 +112,7 @@ SDK 不得导入 Element Plus、uni-ui、uView、TDesign、FirstUI、Pinia、Vue
|
|
|
112
112
|
这样同一个 SDK 才能同时用于 uni-app、PC 网站、后台扩展页面和文档演示。
|
|
113
113
|
|
|
114
114
|
<!-- /microi-progressive:chunk -->
|
|
115
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-010 sha256=
|
|
115
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-010 sha256=ee237c45899f7204d3da1a2d589a89268c2db2a9b765f68fc7097eadf8da7104 -->
|
|
116
116
|
## 验证
|
|
117
117
|
|
|
118
118
|
将项目改为使用 SDK 后:
|
|
@@ -131,7 +131,7 @@ SDK 不得导入 Element Plus、uni-ui、uView、TDesign、FirstUI、Pinia、Vue
|
|
|
131
131
|
- 自动化检查:生产构建后扫描 JS 产物不得包含本地 ApiBase,并在正式域名上下文断言接口请求 origin 等于配置的生产 API;本地 `npm run dev` 仍应命中开发 API。
|
|
132
132
|
|
|
133
133
|
<!-- /microi-progressive:chunk -->
|
|
134
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-011 sha256=
|
|
134
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-011 sha256=81ac75e383ea5a32ae45aeff1276fc2b8f56141961e70cc3956ae818aaf2fa1d -->
|
|
135
135
|
## 搭配 MCI-UI
|
|
136
136
|
|
|
137
137
|
SDK 负责平台能力,MCI-UI 负责产品界面。新的 Microi Vue3 项目应同时使用:
|
|
@@ -144,7 +144,7 @@ SDK 负责平台能力,MCI-UI 负责产品界面。新的 Microi Vue3 项目
|
|
|
144
144
|
不要在 SDK 内解决界面状态、骨架屏、富文本间距或安全区布局。这一层应使用 MCI-UI 组件处理。
|
|
145
145
|
|
|
146
146
|
<!-- /microi-progressive:chunk -->
|
|
147
|
-
<!-- microi-progressive:chunk id=microi-frontend-sdk-012 sha256=
|
|
147
|
+
<!-- microi-progressive:chunk id=microi-frontend-sdk-012 sha256=d869adb0abd87d9ba03b58faa84944a61895773a6c3642f5c20c8a03e315a2ce -->
|
|
148
148
|
## MicroApp 宿主 Token 同步
|
|
149
149
|
|
|
150
150
|
Vue3 前端微服务通过 `window.microApp.getData()` 接收主平台上下文时,不能只把 `token` 放进普通配置对象后假设请求会自动携带。标准 `microi.v8.js` 必须支持 `config.token`,且 `getToken()` 要优先读取运行时 token,再回退到 `storage[tokenKey]`。微服务必须复用同一个 V8 客户端实例,不能在每次按钮点击时重新 `createMicroiV8()`。
|
|
@@ -12,7 +12,7 @@ description: Microi 移动端质量门禁,适用于 UniApp/H5/微信小程序
|
|
|
12
12
|
自动触发:只要任务涉及 Microi 移动端应用、H5、微信小程序、App 构建、uni-app 项目、登录页、tabbar、首页、我的页、工作台、报告页、视觉重设计或移动端验收,即使用户没有明确点名,也要应用本 skill。
|
|
13
13
|
|
|
14
14
|
<!-- microi-progressive:begin -->
|
|
15
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-000 sha256=
|
|
15
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-000 sha256=9f83607349ba6e305c3d2993de8eeceab70c344557e5dfa2a5be964492ef4685 -->
|
|
16
16
|
## 1. 导航和快捷入口必须使用真实图标
|
|
17
17
|
|
|
18
18
|
底部导航、首页快捷入口、会员中心快捷项、九宫格操作和悬浮操作,必须在文字上方或旁边显示可识别的图标。
|
|
@@ -40,7 +40,7 @@ description: Microi 移动端质量门禁,适用于 UniApp/H5/微信小程序
|
|
|
40
40
|
- UniApp H5 桌面预览可以显示手机壳;真机和浏览器移动设备仿真必须自动去壳并铺满视口。自动化测试要分别断言桌面手机壳存在、移动端手机壳标题隐藏,同时检查所有底部菜单包含真实图标节点。
|
|
41
41
|
|
|
42
42
|
<!-- /microi-progressive:chunk -->
|
|
43
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-001 sha256=
|
|
43
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-001 sha256=4e1b247852aa9f235a26f756d415ebb9fb922f2fea0569bda1bdc8e0b91c4d1c -->
|
|
44
44
|
## 1.1 包体资源必须按用途分层
|
|
45
45
|
|
|
46
46
|
- 构建前扫描图片、音频、视频、字体和第三方资源;公开的大资源优先上传到当前租户 HDFS 公有桶并通过 `sys_config.FileServer`/CDN 引用,敏感资源使用私有桶。
|
|
@@ -51,7 +51,7 @@ description: Microi 移动端质量门禁,适用于 UniApp/H5/微信小程序
|
|
|
51
51
|
- 迁移到 HDFS/CDN 后必须从构建产物确认原大文件已经消失,并从业务记录/配置回读相对 `Path`;页面要先加载当前租户 `SysConfig.FileServer`,不得以源码硬编码 CDN 域名替代运行期配置。远程资源加载失败时只能回退到轻量本地占位,不得把原大图重新塞回主包。
|
|
52
52
|
|
|
53
53
|
<!-- /microi-progressive:chunk -->
|
|
54
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-002 sha256=
|
|
54
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-002 sha256=b8e83d75588362899921af62996577277ba77b2fab86767317d62607cec80a84 -->
|
|
55
55
|
## 2. 不要猜测 Microi 前端 SDK 登录接口
|
|
56
56
|
|
|
57
57
|
编写登录代码前,先检查本地项目 SDK 封装,例如 `src/utils/microi.v8.js`、`src/utils/api.js`,或标准 `microi.uniapp` 登录实现。
|
|
@@ -66,6 +66,9 @@ description: Microi 移动端质量门禁,适用于 UniApp/H5/微信小程序
|
|
|
66
66
|
- 登录实现后的第一个测试必须包含真实点击登录按钮,并检查控制台和网络请求。
|
|
67
67
|
- 登录必须传移动端 `_ClientType` 和稳定 `did`,并在 `App.onShow` 调用标准 SDK 的 `resumeAuthSession(false)`。系统休眠后不能只等定时器恢复。
|
|
68
68
|
- 登录失效提示必须原样展示后端 `Msg`;如果 Token 已过期,显示过期分钟/小时/天,如果 Token 属于其它租户,显示 Token 租户与当前租户。详细协议读取 `microi-frontend-sdk/SKILL.md`。
|
|
69
|
+
- 业务守卫、分享接收、手动登录与鉴权失效必须共用登录导航锁;导航失败或登录页真实到达后释放,不能依赖固定延时。UniApp `invoke` 返回 `false` 不会调用 `complete`,被去重的入口不得保留自己的等待锁。
|
|
70
|
+
- 登录完成优先恢复原业务实例,连续登录页一次移出;历史登录页夹在业务栈中时清栈进入目标。成功返回任务必须去重、在页面销毁时取消,并在执行前复核会话;迟到的失效弹窗不能打断新登录。
|
|
71
|
+
- 业务页先保存入口参数再鉴权;`onLoad` 未登录早退后,`onShow` 必须恢复一次初始化,并合并并发加载。初始化期间会话失效后仍需允许登录返回重取,不能永久显示骨架屏或丢失分享的记录 Id。
|
|
69
72
|
|
|
70
73
|
禁止:
|
|
71
74
|
- 凭空编造 SDK 子对象。
|
|
@@ -76,9 +79,10 @@ description: Microi 移动端质量门禁,适用于 UniApp/H5/微信小程序
|
|
|
76
79
|
- H5 路由 `/pages/login/login` 或项目登录路由打开时无控制台错误。
|
|
77
80
|
- 点击账号登录不会抛出 `V8.Login.Login is not a function`。
|
|
78
81
|
- 使用真实系统账号登录后,必须验证“我的”页显示已登录角色,首页/工单/报告不再出现未登录提示,刷新页面或切换底部导航后仍保持一致。
|
|
82
|
+
- 自动回归覆盖并发引导、去重取消无 `complete`、失败重试、历史重复登录栈、登录成功后返回及业务页继续初始化、旧弹窗迟到和页面销毁;真实开发者工具与真机另验冷启动及分享接收,不能用模拟会话代替授权登录。
|
|
79
83
|
|
|
80
84
|
<!-- /microi-progressive:chunk -->
|
|
81
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-003 sha256=
|
|
85
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-003 sha256=a35f20404acbf61814f9475610f881f7c60effc0ce3bb8797cee300cd3349ba7 -->
|
|
82
86
|
## 2.1 登录验证码必须跟随 Sys_Config.EnableCaptcha
|
|
83
87
|
|
|
84
88
|
PC 端、H5、App、微信小程序或任何自定义前端只要调用 `/api/SysUser/login`、`/api/SysUser/Login` 或 `V8.Login(param)`,都必须先读取 `Sys_Config` 的 `EnableCaptcha` 配置,并按配置决定是否展示和提交图形验证码。
|
|
@@ -104,7 +108,7 @@ PC 端、H5、App、微信小程序或任何自定义前端只要调用 `/api/Sy
|
|
|
104
108
|
- 参考标准实现:`microi.uniapp/src/pages/login/index.vue`。
|
|
105
109
|
|
|
106
110
|
<!-- /microi-progressive:chunk -->
|
|
107
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-004 sha256=
|
|
111
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-004 sha256=22bdaf38588f251016e115f1ad15a433e827fb2191041d55ecad42cda94253d1 -->
|
|
108
112
|
## 3. OsClient 请求头不得重复
|
|
109
113
|
|
|
110
114
|
Microi 请求只能发送一个不区分大小写的 OsClient 请求头。浏览器、代理或服务端运行时可能把 `OsClient` 和 `osclient` 这类大小写重复键合并成 `demo, demo`,导致租户识别失败。
|
|
@@ -126,7 +130,7 @@ Microi 请求只能发送一个不区分大小写的 OsClient 请求头。浏览
|
|
|
126
130
|
- 微信/支付宝/飞书/抖音等小程序授权登录接口也必须检查,例如 `/apiengine/miniprogram-login`,不得出现 `osclient: demo, demo` 这类合并值。
|
|
127
131
|
|
|
128
132
|
<!-- /microi-progressive:chunk -->
|
|
129
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-005 sha256=
|
|
133
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-005 sha256=1394c7fb8e59b25553e2f9b71ab7f8cf03290b6930c8d8436123bc6048ad2435 -->
|
|
130
134
|
## 3.1 小程序授权登录必须可追踪、可读错误
|
|
131
135
|
|
|
132
136
|
微信开发者工具的模拟授权与体验版真机调用不是同一条真实链路。手机号授权登录接口必须按阶段诊断,不能只返回“手机号登录失败”。
|
|
@@ -145,7 +149,7 @@ Microi 请求只能发送一个不区分大小写的 OsClient 请求头。浏览
|
|
|
145
149
|
- 体验版真机复测授权登录;不能只以开发者工具模拟成功作为上线依据。
|
|
146
150
|
|
|
147
151
|
<!-- /microi-progressive:chunk -->
|
|
148
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-006 sha256=
|
|
152
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-006 sha256=feb9ba3267bdf1f6394c425b45dd71e19ac4382ae05549d6e1b6b664c6517a19 -->
|
|
149
153
|
## 3.1.1 手机号快速验证前置页不得混淆腾讯官方
|
|
150
154
|
|
|
151
155
|
- 调用手机号快速验证组件前展示的登录页、弹窗、按钮、说明、分享标题和失败提示中,禁止出现“微信”“微信官方”“微信登录”“一键登录”等可能让用户误认为腾讯官方功能或官方产品的文案。
|
|
@@ -154,7 +158,7 @@ Microi 请求只能发送一个不区分大小写的 OsClient 请求头。浏览
|
|
|
154
158
|
- `build:mp-weixin` 后必须扫描登录页源码和 `dist/build/mp-weixin/pages/login/` 产物中的可见文案,并对手机号快速验证前置页截图;发现混淆词、官方 Logo 或近似元素时阻止上传和提审。
|
|
155
159
|
|
|
156
160
|
<!-- /microi-progressive:chunk -->
|
|
157
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-007 sha256=
|
|
161
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-007 sha256=7598db1fdabfe127c2be7593b83dc3a246b1db852d9c0d4001f849d3e97aa273 -->
|
|
158
162
|
## 3.2 微信小程序每个页面默认支持分享
|
|
159
163
|
|
|
160
164
|
小程序项目必须默认支持转发给朋友和分享到朋友圈,不能只给首页或公开页添加分享。登录和权限控制属于访问阶段,不得用来隐藏分享能力。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> 按需读取;本文件由 SKILL.md 的原章节无损拆分。
|
|
4
4
|
|
|
5
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-008 sha256=
|
|
5
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-008 sha256=765335189d85b558ad29ba73c04d1cf078101ee94819f969195b50440a82106f -->
|
|
6
6
|
## 4. 重要按钮必须带图标
|
|
7
7
|
|
|
8
8
|
醒目的主操作必须使用打磨过的图标加文字按钮。
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
- 确认主操作有图标、合适的加载文案和按下反馈。
|
|
24
24
|
|
|
25
25
|
<!-- /microi-progressive:chunk -->
|
|
26
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-009 sha256=
|
|
26
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-009 sha256=e3c66bd92ca059235a7a3b0ece2fdfa598a41eaa149d0ee3a0d24d0d822a9f58 -->
|
|
27
27
|
## 4.1 模块列表优先使用声明式业务卡片
|
|
28
28
|
|
|
29
29
|
Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆叠。优先在
|
|
@@ -53,7 +53,7 @@ Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆
|
|
|
53
53
|
- 批量选择后出现底部操作条;取消选择、执行按钮、更多菜单均可单手点击。
|
|
54
54
|
|
|
55
55
|
<!-- /microi-progressive:chunk -->
|
|
56
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-010 sha256=
|
|
56
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-010 sha256=2ddd560cf3620f8fb7f3cf64d62566206430ee14e6ac380a3023c5b9047b4f46 -->
|
|
57
57
|
## 5. 首屏文字和浮层不得重叠
|
|
58
58
|
|
|
59
59
|
移动端首屏常组合大首屏区域和悬浮快捷面板。这个布局必须视觉检查,因为过大的中文标题和激进的负边距容易造成难看的换行或遮挡主按钮。
|
|
@@ -74,7 +74,7 @@ Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆
|
|
|
74
74
|
- 检查首屏标题、主/次按钮和后续悬浮面板是否裁切或重叠。
|
|
75
75
|
|
|
76
76
|
<!-- /microi-progressive:chunk -->
|
|
77
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-011 sha256=
|
|
77
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-011 sha256=b599e047e6b7a3688e4264a4d4b334e220e9798cbc13326e85a06f52bf20ce12 -->
|
|
78
78
|
## 5.1 未登录/授权提示必须在可用内容区居中
|
|
79
79
|
|
|
80
80
|
未登录、未授权、无权限等提示模块不能贴在页面顶部。页面上方有 hero/header,下方有 tabBar 或固定底栏时,提示卡片和“立即登录/去授权”按钮必须在剩余可用内容区上下左右居中。
|
|
@@ -94,7 +94,7 @@ Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆
|
|
|
94
94
|
- 375px、430px、iOS 刘海屏/灵动岛和 Android 状态栏场景均不得出现贴顶或按钮文字偏移。
|
|
95
95
|
|
|
96
96
|
<!-- /microi-progressive:chunk -->
|
|
97
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-012 sha256=
|
|
97
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-012 sha256=a363aaead9b632f3533e2f046f39cf7b579a91b92ef4e33d42f848d5a7538515 -->
|
|
98
98
|
## 5.2 自定义导航页面必须通过安全区与微信胶囊门禁
|
|
99
99
|
|
|
100
100
|
`navigationStyle: custom` 代表应用接管了系统导航区域,页面壳必须同时负责状态栏、刘海/灵动岛、微信右上角胶囊和底部手势区,不能把这一责任留给业务页面自行估算。
|
|
@@ -113,7 +113,7 @@ Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆
|
|
|
113
113
|
- 发现任意页面被遮挡时,必须修复共享页面壳并重跑全路由;禁止只给当前截图页面增加固定 padding。
|
|
114
114
|
|
|
115
115
|
<!-- /microi-progressive:chunk -->
|
|
116
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-013 sha256=
|
|
116
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-013 sha256=207765d0398738f24566763a2481469f4fc63e8a0b5f00abd292fe8a1cdd225a -->
|
|
117
117
|
## 5.3 全屏工具页必须遵守返回状态栈
|
|
118
118
|
|
|
119
119
|
- AI 助手、扫码工作台、全屏预览等独占视口功能需要手机侧滑返回时,优先使用独立路由承载;普通 `position:fixed` 蒙层不能冒充页面历史。
|
|
@@ -122,7 +122,7 @@ Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆
|
|
|
122
122
|
- 自动化至少覆盖关闭按钮、Android 返回键/`onBackPress`、微信侧滑返回三条路径,并验证返回后原页面和滚动状态仍然可用。
|
|
123
123
|
|
|
124
124
|
<!-- /microi-progressive:chunk -->
|
|
125
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-014 sha256=
|
|
125
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-014 sha256=1451e6ffbb0c0d29d8362e400540e3fa4f9f38a2402a9faf93de4cce7b1c9b4c -->
|
|
126
126
|
## 5.4 微信浮动入口必须通过真实事件桥门禁
|
|
127
127
|
|
|
128
128
|
- UniApp 自定义组件中的浮动按钮、拖拽助手和悬浮客服不得只做 H5 点击测试。必须在微信运行时找到真实组件节点,派发 `touchstart/touchend`,并断言页面栈、弹层状态或业务动作确实变化。
|
|
@@ -131,7 +131,7 @@ Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆
|
|
|
131
131
|
- 自动化需增加对照按钮:同页普通按钮可点击、浮动入口也可点击,才能确认不是自动化连接或页面整体失效。
|
|
132
132
|
|
|
133
133
|
<!-- /microi-progressive:chunk -->
|
|
134
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-015 sha256=
|
|
134
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-015 sha256=8377f92a7456bd68e83867e893f1c9e8eec9edf0bba2a3f434c5bce75a9e2d00 -->
|
|
135
135
|
## 6. 后台菜单必须规划为至少两级
|
|
136
136
|
|
|
137
137
|
真实业务系统的后台菜单不能简单堆成一批一级菜单。
|
|
@@ -159,7 +159,7 @@ Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆
|
|
|
159
159
|
- 最终回复必须说明通过 MCP 写入的真实菜单树,以及执行过的权限刷新。
|
|
160
160
|
|
|
161
161
|
<!-- /microi-progressive:chunk -->
|
|
162
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-016 sha256=
|
|
162
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-016 sha256=0c1632d28f986156f8d70b2710dc0219de4643b4b9c61771ac544a18f4c355ac -->
|
|
163
163
|
## 7. 移动端页面需要动效,但动效必须有用
|
|
164
164
|
|
|
165
165
|
移动端产品不应像静态后台表单。
|
|
@@ -181,7 +181,7 @@ Microi.Client 的标准模块移动端不应把 PC 表格字段机械纵向堆
|
|
|
181
181
|
- 没有动画导致横向溢出、文字裁切或固定栏抖动。
|
|
182
182
|
|
|
183
183
|
<!-- /microi-progressive:chunk -->
|
|
184
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-017 sha256=
|
|
184
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-017 sha256=2dcca5305da25f543181ae23550547cb3e3761aebae2843c5fc60e7848153176 -->
|
|
185
185
|
## 8. 登录页必须是直接登录界面
|
|
186
186
|
|
|
187
187
|
登录页不能强迫用户先在两个身份标签之间切换才能登录。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> 按需读取;本文件由 SKILL.md 的原章节无损拆分。
|
|
4
4
|
|
|
5
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-018 sha256=
|
|
5
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-018 sha256=b6e3138b7f398fad5b03253d07c1eb30e26da5c3df8ff1975117e5a3a282fd58 -->
|
|
6
6
|
## 9. 主题切换必须真实且全局生效
|
|
7
7
|
|
|
8
8
|
当客户要求增加另一种视觉风格时,除非用户明确要求删除,否则要把当前已认可设计保留为一个命名主题,而不是直接覆盖。
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
- 报告详情页必须逐主题截图,检查 `INSPECTION REPORT`、状态胶囊、封面标题、摘要卡、报告正文和富文本在当前主题下都有足够对比度。
|
|
40
40
|
|
|
41
41
|
<!-- /microi-progressive:chunk -->
|
|
42
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-019 sha256=
|
|
42
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-019 sha256=f2ca99aebb70273d991f5142e88bd1e02ff42782df5a8e7e180de297fba0faac -->
|
|
43
43
|
## 10. 报告/列表详情必须保留用户身份
|
|
44
44
|
|
|
45
45
|
从列表进入详情时必须保留调用者身份模型。即使打开的是同一个视觉报告详情页,员工、客户和公开/分享路线也可能需要不同接口。
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
- 确认点击可见卡片后不会发生意外登录跳转。
|
|
61
61
|
|
|
62
62
|
<!-- /microi-progressive:chunk -->
|
|
63
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-020 sha256=
|
|
63
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-020 sha256=95487284aa5f9b1b3a0fb557845b3400af0355e4b2ebf6abebbef461e8ec8485 -->
|
|
64
64
|
## 11. 角色与权限必须基于 sys_user.RoleIds 建模
|
|
65
65
|
|
|
66
66
|
移动端和后台不能只区分“已登录/未登录”。企业应用通常至少有内部员工、售后师傅、客服、客户账号等角色,必须在建模阶段明确角色、菜单权限和数据权限。
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
- 用未绑定的小程序手机号账号登录,截图确认“我的”页出现申请绑定身份入口;提交申请后后台能看到待审核记录;通过审核前数据权限不提前开放,通过审核后对应客户数据或内部工作台能力才出现。
|
|
94
94
|
|
|
95
95
|
<!-- /microi-progressive:chunk -->
|
|
96
|
-
<!-- microi-progressive:chunk id=microi-mobile-app-quality-021 sha256=
|
|
96
|
+
<!-- microi-progressive:chunk id=microi-mobile-app-quality-021 sha256=13405c8ce231e9db8920cd8e1c4e0db26a32c1b5ac967113abee1391985ebfcd -->
|
|
97
97
|
## 审核后的会话与角色同步(强制)
|
|
98
98
|
|
|
99
99
|
- 审核通过后的数据库角色、服务端 DiyToken 身份投影、SDK 用户缓存、页面 capability 和申请状态必须一致,禁止以“退出重登后正常”作为验收成功。
|
|
@@ -16,7 +16,7 @@ Manifest 使用 `tables[].formBanner`;未显式配置时仍按字段类型选
|
|
|
16
16
|
模块引擎或 `sys_menu`。逐步建模在字段完成后调用 `microi_configure_form_banner` 回读验收。
|
|
17
17
|
|
|
18
18
|
<!-- microi-progressive:begin -->
|
|
19
|
-
<!-- microi-progressive:chunk id=microi-system-delivery-000 sha256=
|
|
19
|
+
<!-- microi-progressive:chunk id=microi-system-delivery-000 sha256=bdbc78e88e50c53a3bd29eeb76ce34e3fed8eec5f4ba16371417d2aeee9c2fbe -->
|
|
20
20
|
## 交付总原则
|
|
21
21
|
|
|
22
22
|
1. **先事实源,后建模**:先读需求文档、截图、现有蓝图、数据库结构和菜单结构,形成业务蓝图;不要边猜边建表、边猜边写接口。
|
|
@@ -30,7 +30,7 @@ Manifest 使用 `tables[].formBanner`;未显式配置时仍按字段类型选
|
|
|
30
30
|
9. **平台能力四项同步**:按 `workspace-conventions/SKILL.md` 首部识别创始人源码工作区;每项平台新增、增强或修复都逐项判断应用商城、官方中文文档、Skills、MCP 是否需要完善,交付时列出证据或无需修改的依据。复用已有 MCP 能力,不机械新增工具;镜像发布不等于客户部署,客户手动更新边界必须保留。
|
|
31
31
|
|
|
32
32
|
<!-- /microi-progressive:chunk -->
|
|
33
|
-
<!-- microi-progressive:chunk id=microi-system-delivery-001 sha256=
|
|
33
|
+
<!-- microi-progressive:chunk id=microi-system-delivery-001 sha256=0e58c2126bd11900a4d0f4a7012b463f304490587443e90346c64e9f85dfcf10 -->
|
|
34
34
|
## 用户问题编号跟踪(强制)
|
|
35
35
|
|
|
36
36
|
用户一次提出多个问题时,必须先拆成 `1、2、3、4...` 的问题清单,并在交付过程中保持同一编号,不得合并吞掉或用笼统“已优化”代替。
|
|
@@ -46,7 +46,7 @@ Manifest 使用 `tables[].formBanner`;未显式配置时仍按字段类型选
|
|
|
46
46
|
最终回复必须按原始编号逐项汇总:哪些已实现、哪些未实现、是否通过全自动化测试、是否通过截图验证。不能只给总括性“都完成了”。如果某项没有测试或没有截图,必须明说“未覆盖/未截图”,并说明原因。
|
|
47
47
|
|
|
48
48
|
<!-- /microi-progressive:chunk -->
|
|
49
|
-
<!-- microi-progressive:chunk id=microi-system-delivery-002 sha256=
|
|
49
|
+
<!-- microi-progressive:chunk id=microi-system-delivery-002 sha256=adeb9e4ec4beadf3b7ba33325e860b378b81f6d7e95b25879b64ca4ee1c91987 -->
|
|
50
50
|
## 平台安全与存量兼容验收(强制)
|
|
51
51
|
|
|
52
52
|
AI 零代码交付不能只验证管理员帐号和页面能打开。任何涉及 FormEngine、菜单、角色、子表、文件、SaaS 或登录协议的交付,都必须按以下服务端边界设计和验收:
|
|
@@ -99,7 +99,7 @@ AI 零代码交付不能只验证管理员帐号和页面能打开。任何涉
|
|
|
99
99
|
9. SaaS 脱敏投影不包含基础设施密钥,Redis anonymous/temporary/非管理员管理失败。
|
|
100
100
|
|
|
101
101
|
<!-- /microi-progressive:chunk -->
|
|
102
|
-
<!-- microi-progressive:chunk id=microi-system-delivery-003 sha256=
|
|
102
|
+
<!-- microi-progressive:chunk id=microi-system-delivery-003 sha256=8e2891f2a149d6828b653b9f0735ea39a4df5ba60178c79f0e5b0065ce72ee84 -->
|
|
103
103
|
## 前端交付检查清单
|
|
104
104
|
|
|
105
105
|
- 底部 tabBar 图标不 404。
|
|
@@ -113,7 +113,7 @@ AI 零代码交付不能只验证管理员帐号和页面能打开。任何涉
|
|
|
113
113
|
- 订单状态角标只给需要处理的状态,不给“全部/已完成/已取消”等静态分类堆数字。
|
|
114
114
|
|
|
115
115
|
<!-- /microi-progressive:chunk -->
|
|
116
|
-
<!-- microi-progressive:chunk id=microi-system-delivery-004 sha256=
|
|
116
|
+
<!-- microi-progressive:chunk id=microi-system-delivery-004 sha256=9a226a70ef240ce83151c140d002253dccbf7efa63653f61c8825f2b69c1c7d3 -->
|
|
117
117
|
## 交付完成定义
|
|
118
118
|
|
|
119
119
|
一次 Microi 全系统交付只有同时满足以下条件才算完成:
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
统计都应来自真实字段或真实接口引擎;配置写 `diy_table`,禁止写入 `sys_menu`。即使用户
|
|
8
8
|
没有逐项指定,也必须写入类型感知的合理默认值,不能交付空 Banner。
|
|
9
9
|
|
|
10
|
-
<!-- microi-progressive:chunk id=microi-system-delivery-005 sha256=
|
|
10
|
+
<!-- microi-progressive:chunk id=microi-system-delivery-005 sha256=923d8382de89f7c448cd0aa9d672d45339ed9c66a5f57533c408be67f861bca1 -->
|
|
11
11
|
## 标准工作流
|
|
12
12
|
|
|
13
13
|
### 1. 需求蓝图阶段
|
|
@@ -2,13 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
> 按需读取;本文件由 SKILL.md 的原章节无损拆分。
|
|
4
4
|
|
|
5
|
-
<!-- microi-progressive:chunk id=microi-system-delivery-006 sha256=
|
|
5
|
+
<!-- microi-progressive:chunk id=microi-system-delivery-006 sha256=4b999e29e04c192319690a886ba25bb8952d5cc1910db8fa151b583d599b2be5 -->
|
|
6
6
|
## 自动化测试必须覆盖的坑
|
|
7
7
|
|
|
8
8
|
### 后端统一测试与发布门禁
|
|
9
9
|
|
|
10
|
-
-
|
|
11
|
-
|
|
10
|
+
- 官方或社区独立业务应用、游戏和客户项目在应用自己的 `tests/` 或独立测试工程维护回归,由应用自己的测试及发布入口执行;不得通过直接放文件、转调包装或自动扫描加入平台 Quick/Full。官方商城发布不使业务应用变为平台内置能力。平台 SDK、商城协议、安装器及通用缺陷的最小回归仍由平台负责。
|
|
11
|
+
|
|
12
|
+
- 每个平台新功能或 Bug 修复必须提供对应回归用例;平台 C# 进入 `Microi.Tests`,平台前端与内置资源/V8 测试进入平台 Node 自动发现范围。修复先保留失败证据,再跑成功、边界、异常、权限及旧格式兼容用例;不能仅添加字符串存在断言替代行为测试。
|
|
13
|
+
- `run-node-regressions.mjs` 自动发现 `Microi.Tests`、`OfficialApplications/Resource`、`Microi.Client/tests` 的确定性测试。新文件无法分类即失败;Playwright 用例必须走真实浏览器入口,不能用 Node 执行后把跳过当通过。所有计数需回读,0 用例、失败、取消、skipped、todo 均拒绝发布。
|
|
12
14
|
- 仅推送模式也必须取得发布锁并执行 Full。源码候选哈希、构建上下文哈希与 `release-artifact.mjs` 回执必须一致,且每个 Docker push 前再验证;无回执的历史产物不允许上传。文档专用模式不运行无关后端业务测试。
|
|
13
15
|
- 测试评审按身份/权限、多租户隔离、CRUD/事务、V8 同步异步与 `return/V8.Result`、存储安全、缓存/任务幂等、升级回滚、应用包幂等、浏览器登录/目标路由、发布脚本失败关闭分类盘点。新增能力补所在分类,不承诺一轮测试覆盖所有未知业务。
|
|
14
16
|
|
|
@@ -130,7 +132,7 @@
|
|
|
130
132
|
- 每次修复资金/资产业务规则后,必须同步更新项目蓝图/方案文档中的触发点、计算公式、字段口径和验收方式,不能只改代码或只在对话里说明。
|
|
131
133
|
|
|
132
134
|
<!-- /microi-progressive:chunk -->
|
|
133
|
-
<!-- microi-progressive:chunk id=microi-system-delivery-007 sha256=
|
|
135
|
+
<!-- microi-progressive:chunk id=microi-system-delivery-007 sha256=67fa060b6520a80e41818ac0974c0b38ff3171c97a1c558a01667b854865fa7a -->
|
|
134
136
|
## 复盘记录格式
|
|
135
137
|
|
|
136
138
|
每次用户手工测出问题,修复后都要把问题写入对应通用 Skill,格式如下:
|
|
@@ -14,7 +14,7 @@ Microi.UI 是 Microi 产品共享前端设计系统。Vue 3 网站、响应式
|
|
|
14
14
|
这是自动规则。不要等用户明确说“遵循 `microi.skills/microi-ui/SKILL.md`”。只要仓库、需求、文件路径或项目上下文属于 Microi 生态,且工作涉及前端界面、网站界面、H5、uni-app、小程序、客户/员工/会员页面、报告、仪表盘或视觉打磨,就默认读取并应用本 skill。
|
|
15
15
|
|
|
16
16
|
<!-- microi-progressive:begin -->
|
|
17
|
-
<!-- microi-progressive:chunk id=microi-ui-000 sha256=
|
|
17
|
+
<!-- microi-progressive:chunk id=microi-ui-000 sha256=f7196312987e0d8cb833f3ae0d96f014d57e2ca1fb120333accbe25a05f7c83d -->
|
|
18
18
|
## 核心承诺
|
|
19
19
|
|
|
20
20
|
Microi.UI 不只是组件集合,它是 AI 构建软件的视觉交付标准:
|
|
@@ -30,7 +30,7 @@ Microi.UI 不只是组件集合,它是 AI 构建软件的视觉交付标准:
|
|
|
30
30
|
- 每个移动端页面都必须处理安全区、加载状态、按下反馈和底部操作。
|
|
31
31
|
|
|
32
32
|
<!-- /microi-progressive:chunk -->
|
|
33
|
-
<!-- microi-progressive:chunk id=microi-ui-001 sha256=
|
|
33
|
+
<!-- microi-progressive:chunk id=microi-ui-001 sha256=044beeb0089cefa69844d2ff8a39f2130987af557cc63c03701c2b822f0b9c88 -->
|
|
34
34
|
## 内置设计模式
|
|
35
35
|
|
|
36
36
|
当需求只说“主流、高级、好看”时,先为页面确定一种主模式,再开始选组件和写样式:
|
|
@@ -53,7 +53,7 @@ Microi.UI 不只是组件集合,它是 AI 构建软件的视觉交付标准:
|
|
|
53
53
|
- [原创模式案例](../ui-design/assets/pattern-showcase/index.html) 只用于理解结构、状态和视觉差异,业务项目应替换为自己的信息架构和合法资产。
|
|
54
54
|
|
|
55
55
|
<!-- /microi-progressive:chunk -->
|
|
56
|
-
<!-- microi-progressive:chunk id=microi-ui-002 sha256=
|
|
56
|
+
<!-- microi-progressive:chunk id=microi-ui-002 sha256=cc3389777d88e0dfa5f83cdae60fbe5e23605525cf7ad95a28a41b9c71f8863c -->
|
|
57
57
|
## 源码结构
|
|
58
58
|
|
|
59
59
|
- `Microi.UI/src/theme/tokens.css`:设计变量、色板、圆角、阴影、动效、移动端场景变量。
|
|
@@ -63,7 +63,7 @@ Microi.UI 不只是组件集合,它是 AI 构建软件的视觉交付标准:
|
|
|
63
63
|
- `Microi.UI/src/uniapp`:uni-app Vue 3 组件。
|
|
64
64
|
|
|
65
65
|
<!-- /microi-progressive:chunk -->
|
|
66
|
-
<!-- microi-progressive:chunk id=microi-ui-003 sha256=
|
|
66
|
+
<!-- microi-progressive:chunk id=microi-ui-003 sha256=749502e10b376884c9f2038fe2e0e385eab8f72646ce1af7daf5c18161c87a79 -->
|
|
67
67
|
## 默认要求
|
|
68
68
|
|
|
69
69
|
- **禁止弧形包边**:Tab、卡片、导航、提示条不使用随容器圆角弯曲的强调色侧边框。默认无侧框;需要选中侧标时使用独立的直竖线,与上下边缘留白,不能沿圆角包住上下边缘。中性容器边框与直线端点小圆角不受影响;完整规则见 `../ui-design/SKILL.md`。
|
|
@@ -87,7 +87,7 @@ Microi.UI 不只是组件集合,它是 AI 构建软件的视觉交付标准:
|
|
|
87
87
|
- 页面安全区验收以 `pages.json` 全路由为清单,至少覆盖 iPhone、Android 和微信开发者工具;首页、详情、表单、底部弹层及 fixed 操作栏必须全部通过。
|
|
88
88
|
|
|
89
89
|
<!-- /microi-progressive:chunk -->
|
|
90
|
-
<!-- microi-progressive:chunk id=microi-ui-004 sha256=
|
|
90
|
+
<!-- microi-progressive:chunk id=microi-ui-004 sha256=e40239e4859edb17b2c0bb2bc39009692c3a1207d59b3dd11a983130aede75c2 -->
|
|
91
91
|
## 组件选择
|
|
92
92
|
|
|
93
93
|
- `MciPage`:页面壳、安全区、动效、高品质移动端背景。
|
|
@@ -121,7 +121,7 @@ Microi.UI 不只是组件集合,它是 AI 构建软件的视觉交付标准:
|
|
|
121
121
|
- 可点击整卡必须有 hover/focus/pressed、键盘 Enter/Space、可见焦点与内部控件事件隔离;骨架屏和最终卡片结构等高。
|
|
122
122
|
|
|
123
123
|
<!-- /microi-progressive:chunk -->
|
|
124
|
-
<!-- microi-progressive:chunk id=microi-ui-005 sha256=
|
|
124
|
+
<!-- microi-progressive:chunk id=microi-ui-005 sha256=7cd46e4c2b14511700c0c30b449ceff038c029f451e03b7963892354c548ad11 -->
|
|
125
125
|
## 高品质移动端视觉标准
|
|
126
126
|
|
|
127
127
|
移动端应用必须像经过打磨的产品,而不是把后台表单硬塞进手机视口。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> 按需读取;本文件由 SKILL.md 的原章节无损拆分。
|
|
4
4
|
|
|
5
|
-
<!-- microi-progressive:chunk id=microi-ui-006 sha256=
|
|
5
|
+
<!-- microi-progressive:chunk id=microi-ui-006 sha256=640cefe2522ed4fa107299f8cebd22f9adb123f2cfa137841483aa43dc2ab446 -->
|
|
6
6
|
## 移动端场景蓝图
|
|
7
7
|
|
|
8
8
|
### 登录/注册
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
- 活动页需要活动首屏、进度/状态、奖励/操作面板和规则面板。
|
|
115
115
|
|
|
116
116
|
<!-- /microi-progressive:chunk -->
|
|
117
|
-
<!-- microi-progressive:chunk id=microi-ui-007 sha256=
|
|
117
|
+
<!-- microi-progressive:chunk id=microi-ui-007 sha256=7160d9b28fb119dc5ee9c0a59e6a0a333defee6dab7dce52f5e56a8354e597e7 -->
|
|
118
118
|
## 网站/PC 站标准
|
|
119
119
|
|
|
120
120
|
- 构建真实产品/站点体验,不要做通用落地页外壳。
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
- 写页面局部 CSS 前优先使用 `MciHeroPanel`、`MciSection`、`MciCard`、`MciMetricCard` 和 `MciButton`。
|
|
127
127
|
|
|
128
128
|
<!-- /microi-progressive:chunk -->
|
|
129
|
-
<!-- microi-progressive:chunk id=microi-ui-008 sha256=
|
|
129
|
+
<!-- microi-progressive:chunk id=microi-ui-008 sha256=4f6b3174c3353ba42388b1c2cdbeea5262adfbbccbd1021667ae642c80bf7a60 -->
|
|
130
130
|
## 后台菜单配套
|
|
131
131
|
|
|
132
132
|
创建 Microi 低代码系统时,后台菜单不应全部是一层菜单。真实系统至少使用两级:
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
移动端信息架构在可行时应与这些业务域匹配。
|
|
141
141
|
|
|
142
142
|
<!-- /microi-progressive:chunk -->
|
|
143
|
-
<!-- microi-progressive:chunk id=microi-ui-009 sha256=
|
|
143
|
+
<!-- microi-progressive:chunk id=microi-ui-009 sha256=741009676a3161ce7aed258306b759ffb8eeca3ee681c55fd4fc5b4fcc823059 -->
|
|
144
144
|
## AI 实施清单
|
|
145
145
|
|
|
146
146
|
- Microi 前端、网站、H5、uni-app、小程序、客户门户、员工端、会员中心、仪表盘、报告、活动和视觉重设计任务要自动识别本 skill。
|
|
@@ -160,7 +160,7 @@
|
|
|
160
160
|
- 检查未登录/未授权提示卡片是否在 header 与 tabBar/底栏之间的可用内容区上下左右居中,不能贴在顶部。
|
|
161
161
|
|
|
162
162
|
<!-- /microi-progressive:chunk -->
|
|
163
|
-
<!-- microi-progressive:chunk id=microi-ui-010 sha256=
|
|
163
|
+
<!-- microi-progressive:chunk id=microi-ui-010 sha256=fe2debba61f4ebdab4d67df7df972c5c7456a2eea4e3b4fef6a04256165e999d -->
|
|
164
164
|
## 禁止输出
|
|
165
165
|
|
|
166
166
|
- Microi.UI 文件或文档内不得出现外部 UI 库身份或复制来的类名前缀。
|