@zfqh/uniapp 0.3.3 → 0.3.4
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/CHANGELOG.md +8 -0
- package/docs/api/configs/app.md +7 -13
- package/docs/api/configs/index.md +20 -15
- package/docs/api/index.md +0 -24
- package/docs/guide/getting-started.md +11 -6
- package/docs/guide/project-frame.md +12 -7
- package/lib/configs/app.d.ts +3 -6
- package/lib/configs/app.js +2 -34
- package/lib/utils/uni.js +1 -3
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.3.4](http://10.10.10.16/caoben/front-end/compare/@zfqh/uniapp@0.3.3...@zfqh/uniapp@0.3.4) (2026-07-14)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @zfqh/uniapp
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [0.3.3](http://10.10.10.16/caoben/front-end/compare/@zfqh/uniapp@0.3.2...@zfqh/uniapp@0.3.3) (2026-07-14)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @zfqh/uniapp
|
package/docs/api/configs/app.md
CHANGED
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
# app
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
内置预设:
|
|
6
|
-
|
|
7
|
-
| 预设 | 说明 |
|
|
8
|
-
| --- | --- |
|
|
9
|
-
| `app.patient` | 智赋岐黄互联网医院,`channel: 1`。 |
|
|
10
|
-
| `app.doctor` | 智赋岐黄医生端,`channel: 2`。 |
|
|
11
|
-
| `app.merchant` | 智赋岐黄门店端,`channel: 3`。 |
|
|
3
|
+
应用配置。
|
|
12
4
|
|
|
13
5
|
| 字段 | 类型 | 默认值 | 说明 |
|
|
14
6
|
| --- | --- | --- | --- |
|
|
@@ -22,16 +14,18 @@
|
|
|
22
14
|
|
|
23
15
|
## 基本使用
|
|
24
16
|
|
|
25
|
-
|
|
17
|
+
在根配置中直接传入应用字段,业务请求会用 `channel` 注入请求头。
|
|
26
18
|
|
|
27
19
|
```ts
|
|
28
20
|
// config.ts
|
|
29
21
|
import { defineConfig } from '@zfqh/uniapp';
|
|
30
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
31
22
|
|
|
32
23
|
defineConfig({
|
|
33
|
-
|
|
34
|
-
|
|
24
|
+
app: {
|
|
25
|
+
name: '智赋岐黄互联网医院',
|
|
26
|
+
appId: 'com.qihuangai.patient',
|
|
27
|
+
channel: 1,
|
|
28
|
+
},
|
|
35
29
|
});
|
|
36
30
|
```
|
|
37
31
|
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
|
|
7
7
|
```ts
|
|
8
8
|
import { defineConfig, createPages } from '@zfqh/uniapp';
|
|
9
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
10
9
|
// #ifdef H5
|
|
11
10
|
import pages from 'virtual:remove-json-comments@/pages.json';
|
|
12
11
|
// #endif
|
|
@@ -15,7 +14,11 @@ import pages from '@/pages.json';
|
|
|
15
14
|
// #endif
|
|
16
15
|
|
|
17
16
|
defineConfig({
|
|
18
|
-
app:
|
|
17
|
+
app: {
|
|
18
|
+
name: '智赋岐黄互联网医院',
|
|
19
|
+
appId: 'com.qihuangai.patient',
|
|
20
|
+
channel: 1,
|
|
21
|
+
},
|
|
19
22
|
page: createPages(pages),
|
|
20
23
|
path: {
|
|
21
24
|
index: '/pages/index/index',
|
|
@@ -25,7 +28,7 @@ defineConfig({
|
|
|
25
28
|
});
|
|
26
29
|
```
|
|
27
30
|
|
|
28
|
-
`defineConfig`
|
|
31
|
+
`defineConfig` 会修改包内部单例配置,业务配置文件只要被入口导入执行即可生效。
|
|
29
32
|
|
|
30
33
|
## defineEnvConfig
|
|
31
34
|
|
|
@@ -55,7 +58,6 @@ import { defineConfig, defineEnvConfig, config } from '@zfqh/uniapp';
|
|
|
55
58
|
|
|
56
59
|
```ts
|
|
57
60
|
import { defineConfig, createPages } from '@zfqh/uniapp';
|
|
58
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
59
61
|
import { brand } from '@zfqh/uniapp/lib/configs/brand';
|
|
60
62
|
// #ifdef H5
|
|
61
63
|
import pages from 'virtual:remove-json-comments@/pages.json';
|
|
@@ -65,7 +67,11 @@ import pages from '@/pages.json';
|
|
|
65
67
|
// #endif
|
|
66
68
|
|
|
67
69
|
defineConfig({
|
|
68
|
-
app:
|
|
70
|
+
app: {
|
|
71
|
+
name: '智赋岐黄互联网医院',
|
|
72
|
+
appId: 'com.qihuangai.patient',
|
|
73
|
+
channel: 1,
|
|
74
|
+
},
|
|
69
75
|
brand: brand.zfqh,
|
|
70
76
|
page: createPages(pages),
|
|
71
77
|
path: {
|
|
@@ -121,26 +127,25 @@ export default defineEnvConfig({
|
|
|
121
127
|
|
|
122
128
|
```ts
|
|
123
129
|
import { defineConfig } from '@zfqh/uniapp';
|
|
124
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
125
130
|
|
|
126
131
|
defineConfig({
|
|
127
|
-
app:
|
|
132
|
+
app: {
|
|
133
|
+
name: '智赋岐黄互联网医院',
|
|
134
|
+
appId: 'com.qihuangai.patient',
|
|
135
|
+
channel: 1,
|
|
136
|
+
},
|
|
128
137
|
});
|
|
129
138
|
```
|
|
130
139
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
```ts
|
|
134
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
也可以在预设基础上覆盖字段:
|
|
140
|
+
也可以在基础配置上覆盖字段:
|
|
138
141
|
|
|
139
142
|
```ts
|
|
140
143
|
defineConfig({
|
|
141
144
|
app: {
|
|
142
|
-
...app.merchant,
|
|
143
145
|
name: '自定义门店端',
|
|
146
|
+
appId: 'com.qihuangai.merchant',
|
|
147
|
+
channel: 3,
|
|
148
|
+
primary: '#451709',
|
|
144
149
|
},
|
|
145
150
|
});
|
|
146
151
|
```
|
package/docs/api/index.md
CHANGED
|
@@ -102,7 +102,6 @@ import {
|
|
|
102
102
|
以下目录没有从根入口完整导出:
|
|
103
103
|
|
|
104
104
|
- `@zfqh/uniapp/lib/apis`
|
|
105
|
-
- `@zfqh/uniapp/lib/configs/app` 的 `app.patient/app.doctor/app.merchant`
|
|
106
105
|
- `@zfqh/uniapp/lib/modules`
|
|
107
106
|
- `@zfqh/uniapp/lib/mixins`
|
|
108
107
|
- `@zfqh/uniapp/lib/components`
|
|
@@ -122,29 +121,6 @@ import { GET, POST, getTencentToken } from '@zfqh/uniapp/lib/apis';
|
|
|
122
121
|
|
|
123
122
|
根入口 `@zfqh/uniapp` 只导出根入口明确暴露的能力。业务 API、modules、mixins 没有全部从根入口导出,需要深度引用构建后的 `lib` 路径。
|
|
124
123
|
|
|
125
|
-
## 配置预设
|
|
126
|
-
|
|
127
|
-
`app.patient`、`app.doctor`、`app.merchant` 属于配置预设,不从根入口导出。业务配置文件中请从配置目录深度引用:
|
|
128
|
-
|
|
129
|
-
```ts
|
|
130
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
131
|
-
|
|
132
|
-
defineConfig({
|
|
133
|
-
app: app.patient,
|
|
134
|
-
});
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
如果需要覆盖预设字段,可展开后覆盖:
|
|
138
|
-
|
|
139
|
-
```ts
|
|
140
|
-
defineConfig({
|
|
141
|
-
app: {
|
|
142
|
-
...app.merchant,
|
|
143
|
-
name: '自定义门店端',
|
|
144
|
-
},
|
|
145
|
-
});
|
|
146
|
-
```
|
|
147
|
-
|
|
148
124
|
## API
|
|
149
125
|
|
|
150
126
|
当前 API 聚合入口位于 `lib/apis`,由 `@zfqh/uniapp/lib/apis` 导出 `request` 和 `core`:
|
|
@@ -78,7 +78,6 @@ Store 使用入口请按上下文区分:
|
|
|
78
78
|
|
|
79
79
|
```ts
|
|
80
80
|
import { defineConfig, createPages } from '@zfqh/uniapp';
|
|
81
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
82
81
|
// #ifdef H5
|
|
83
82
|
import pages from 'virtual:remove-json-comments@/pages.json';
|
|
84
83
|
// #endif
|
|
@@ -88,7 +87,11 @@ import pages from '@/pages.json';
|
|
|
88
87
|
import { getTencentToken } from '@zfqh/uniapp/lib/apis';
|
|
89
88
|
|
|
90
89
|
defineConfig({
|
|
91
|
-
app:
|
|
90
|
+
app: {
|
|
91
|
+
name: '智赋岐黄互联网医院',
|
|
92
|
+
appId: 'com.qihuangai.patient',
|
|
93
|
+
channel: 1,
|
|
94
|
+
},
|
|
92
95
|
page: createPages(pages),
|
|
93
96
|
path: {
|
|
94
97
|
index: '/pages/index/index',
|
|
@@ -115,15 +118,18 @@ defineConfig({
|
|
|
115
118
|
});
|
|
116
119
|
```
|
|
117
120
|
|
|
118
|
-
|
|
121
|
+
门店端这类需要覆盖主题色或上传区域的项目,可以直接配置应用字段并覆盖相关选项:
|
|
119
122
|
|
|
120
123
|
```ts
|
|
121
124
|
import { defineConfig } from '@zfqh/uniapp';
|
|
122
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
123
125
|
import { getTencentToken } from '@zfqh/uniapp/lib/apis';
|
|
124
126
|
|
|
125
127
|
defineConfig({
|
|
126
|
-
app:
|
|
128
|
+
app: {
|
|
129
|
+
name: '智赋岐黄门店端',
|
|
130
|
+
appId: 'com.qihuangai.merchant',
|
|
131
|
+
channel: 3,
|
|
132
|
+
},
|
|
127
133
|
path: {
|
|
128
134
|
index: '/pages/home/home',
|
|
129
135
|
webview: '/pages/webview/webview',
|
|
@@ -153,7 +159,6 @@ defineConfig({
|
|
|
153
159
|
|
|
154
160
|
关键点:
|
|
155
161
|
|
|
156
|
-
- `app.patient`、`app.merchant` 是内置预设,位于深度路径 `@zfqh/uniapp/lib/configs/app`。
|
|
157
162
|
- `page: createPages(pages)` 会从 `pages.json` 生成 `pages`、`tabBarPages`、`nativePages`、`needLoginPages`、`notRedirectPages`。
|
|
158
163
|
- 如项目暂不需要自动页面集合,也可以不配置 `page`,只配置 `path`,由业务自行维护登录拦截页面集合。
|
|
159
164
|
- H5 端如果 `pages.json` 带注释,可通过 `virtual:remove-json-comments@/pages.json` 导入;其他端直接导入 `@/pages.json`。
|
|
@@ -64,7 +64,6 @@ import './config';
|
|
|
64
64
|
|
|
65
65
|
```ts
|
|
66
66
|
import { defineConfig, createPages } from '@zfqh/uniapp';
|
|
67
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
68
67
|
// #ifdef H5
|
|
69
68
|
import pages from 'virtual:remove-json-comments@/pages.json';
|
|
70
69
|
// #endif
|
|
@@ -74,7 +73,11 @@ import pages from '@/pages.json';
|
|
|
74
73
|
import { getTencentToken } from '@zfqh/uniapp/lib/apis';
|
|
75
74
|
|
|
76
75
|
defineConfig({
|
|
77
|
-
app:
|
|
76
|
+
app: {
|
|
77
|
+
name: '智赋岐黄互联网医院',
|
|
78
|
+
appId: 'com.qihuangai.patient',
|
|
79
|
+
channel: 1,
|
|
80
|
+
},
|
|
78
81
|
page: createPages(pages),
|
|
79
82
|
path: {
|
|
80
83
|
index: '/pages/index/index',
|
|
@@ -101,15 +104,18 @@ defineConfig({
|
|
|
101
104
|
});
|
|
102
105
|
```
|
|
103
106
|
|
|
104
|
-
|
|
107
|
+
门店端可直接配置应用字段,并覆盖主题色或上传 region:
|
|
105
108
|
|
|
106
109
|
```ts
|
|
107
110
|
import { defineConfig } from '@zfqh/uniapp';
|
|
108
|
-
import { app } from '@zfqh/uniapp/lib/configs/app';
|
|
109
111
|
import { getTencentToken } from '@zfqh/uniapp/lib/apis';
|
|
110
112
|
|
|
111
113
|
defineConfig({
|
|
112
|
-
app:
|
|
114
|
+
app: {
|
|
115
|
+
name: '智赋岐黄门店端',
|
|
116
|
+
appId: 'com.qihuangai.merchant',
|
|
117
|
+
channel: 3,
|
|
118
|
+
},
|
|
113
119
|
path: {
|
|
114
120
|
index: '/pages/home/home',
|
|
115
121
|
webview: '/pages/webview/webview',
|
|
@@ -140,7 +146,6 @@ defineConfig({
|
|
|
140
146
|
配置要点:
|
|
141
147
|
|
|
142
148
|
- `defineConfig` 修改的是包内部单例配置,配置文件被导入执行即可生效。
|
|
143
|
-
- `app` 预设需要从 `@zfqh/uniapp/lib/configs/app` 深度引用。
|
|
144
149
|
- 推荐用 `createPages(pages)` 从 `pages.json` 自动生成页面集合,减少手写 `needLoginPages`、`tabBarPages` 的维护成本。
|
|
145
150
|
- `path.index`、`path.login`、`path.webview` 分别影响首页、登录拦截和 webview 承载页。
|
|
146
151
|
- `upload.request` 需要把后端字段映射成 COS 上传工具需要的字段名。
|
|
@@ -176,7 +181,7 @@ export default defineConfig({
|
|
|
176
181
|
|
|
177
182
|
## TypeScript 配置
|
|
178
183
|
|
|
179
|
-
在 `tsconfig.json` 的 `compilerOptions.types`
|
|
184
|
+
在 `tsconfig.json` 的 `compilerOptions.types` 中添加类型声明,使深度引用路径获得类型提示:
|
|
180
185
|
|
|
181
186
|
```json
|
|
182
187
|
{
|
package/lib/configs/app.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** 应用配置 */
|
|
2
|
-
declare const
|
|
2
|
+
declare const app: {
|
|
3
3
|
/** 应用标识 */
|
|
4
4
|
code: string;
|
|
5
5
|
/** 应用名称 */
|
|
@@ -15,9 +15,6 @@ declare const $app: {
|
|
|
15
15
|
/** 应用渠道标识 */
|
|
16
16
|
channel: number | string;
|
|
17
17
|
};
|
|
18
|
-
type App = typeof
|
|
18
|
+
type App = typeof app;
|
|
19
19
|
export type AppConfig = Partial<App>;
|
|
20
|
-
export
|
|
21
|
-
[key in 'patient' | 'doctor' | 'merchant']: App;
|
|
22
|
-
};
|
|
23
|
-
export default $app;
|
|
20
|
+
export default app;
|
package/lib/configs/app.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** 应用配置 */
|
|
2
|
-
const
|
|
2
|
+
const app = {
|
|
3
3
|
/** 应用标识 */
|
|
4
4
|
code: '',
|
|
5
5
|
/** 应用名称 */
|
|
@@ -15,36 +15,4 @@ const $app = {
|
|
|
15
15
|
/** 应用渠道标识 */
|
|
16
16
|
channel: 0,
|
|
17
17
|
};
|
|
18
|
-
export
|
|
19
|
-
patient: {
|
|
20
|
-
code: '',
|
|
21
|
-
name: '智赋岐黄互联网医院',
|
|
22
|
-
primary: '#00B4C3',
|
|
23
|
-
appId: 'com.qihuangai.patient',
|
|
24
|
-
weappId: 'wxe323a0be9ff6165f',
|
|
25
|
-
weappOrigId: 'gh_14c1f99774cb',
|
|
26
|
-
channel: 1,
|
|
27
|
-
},
|
|
28
|
-
doctor: {
|
|
29
|
-
code: '',
|
|
30
|
-
name: '智赋岐黄医生端',
|
|
31
|
-
primary: '#00B4C3',
|
|
32
|
-
appId: 'com.qihuangai.doctor',
|
|
33
|
-
weappId: '',
|
|
34
|
-
weappOrigId: '',
|
|
35
|
-
channel: 2,
|
|
36
|
-
},
|
|
37
|
-
merchant: {
|
|
38
|
-
code: '',
|
|
39
|
-
name: '智赋岐黄门店端',
|
|
40
|
-
primary: '#451709',
|
|
41
|
-
appId: 'com.qihuangai.merchant',
|
|
42
|
-
weappId: '',
|
|
43
|
-
weappOrigId: '',
|
|
44
|
-
channel: 3,
|
|
45
|
-
},
|
|
46
|
-
};
|
|
47
|
-
Object.keys(app).forEach((code) => {
|
|
48
|
-
Object.assign(app[code], { code });
|
|
49
|
-
});
|
|
50
|
-
export default $app;
|
|
18
|
+
export default app;
|
package/lib/utils/uni.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
// #ifdef H5
|
|
2
2
|
import { colorGradient } from '@gmcb/uv-ui/libs/function/colorGradient';
|
|
3
3
|
// #endif
|
|
4
|
-
import { app } from '../configs/app';
|
|
5
4
|
import mp from '../configs/mp';
|
|
6
5
|
import color from '../configs/color';
|
|
7
6
|
import { IS_WEBVIEW_ENV } from './consts';
|
|
@@ -125,8 +124,7 @@ if (query) {
|
|
|
125
124
|
});
|
|
126
125
|
}
|
|
127
126
|
// 更新主题色
|
|
128
|
-
const primary =
|
|
129
|
-
app[query.app]?.primary;
|
|
127
|
+
const primary = query.primary ? `#${query.primary}`.replace(/^#+/, '#') : '';
|
|
130
128
|
if (primary) {
|
|
131
129
|
const colors = colorGradient(primary, '#fff', 10);
|
|
132
130
|
document.documentElement.style.setProperty('--primary', (color.primary = colors[0]));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zfqh/uniapp",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.4",
|
|
4
4
|
"description": "uniapp公共模块",
|
|
5
5
|
"author": "yinjiazeng@163.com",
|
|
6
6
|
"license": "MIT",
|
|
@@ -46,5 +46,5 @@
|
|
|
46
46
|
"@types/qs": "^6.9.16",
|
|
47
47
|
"@types/url-parse": "^1.4.11"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "5c60901fa04507cd11a4b0b0a25ec1bc7585007b"
|
|
50
50
|
}
|