@zfqh/uniapp 0.3.3 → 0.3.5

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 CHANGED
@@ -3,6 +3,22 @@
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.5](http://10.10.10.16/caoben/front-end/compare/@zfqh/uniapp@0.3.4...@zfqh/uniapp@0.3.5) (2026-07-15)
7
+
8
+ **Note:** Version bump only for package @zfqh/uniapp
9
+
10
+
11
+
12
+
13
+
14
+ ## [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)
15
+
16
+ **Note:** Version bump only for package @zfqh/uniapp
17
+
18
+
19
+
20
+
21
+
6
22
  ## [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
23
 
8
24
  **Note:** Version bump only for package @zfqh/uniapp
@@ -1,14 +1,6 @@
1
1
  # app
2
2
 
3
- 应用配置。发布路径:`@zfqh/uniapp/lib/configs/app`
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
- 患者端和商户端项目通常在根配置中选择内置应用预设,业务请求会用 `channel` 注入请求头。
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
- // 患者端使用 app.patient,商户端使用 app.merchant
34
- app: app.patient,
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: app.patient,
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` 会修改包内部单例配置,业务配置文件只要被入口导入执行即可生效。内置 `app` 预设不从根入口导出,需要从 `@zfqh/uniapp/lib/configs/app` 深度引用。
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: app.patient,
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: app.patient,
132
+ app: {
133
+ name: '智赋岐黄互联网医院',
134
+ appId: 'com.qihuangai.patient',
135
+ channel: 1,
136
+ },
128
137
  });
129
138
  ```
130
139
 
131
- 内置预设包含 `patient`、`doctor`、`merchant` 三类应用配置。预设不从根入口导出,需要从深度路径引用:
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: app.patient,
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: app.merchant,
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: app.patient,
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
- 门店端可复用 `app.merchant`,并覆盖主题色或上传 region:
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: app.merchant,
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` 中添加类型声明,使深度引用路径(如 `@zfqh/uniapp/lib/configs/app`)获得类型提示:
184
+ 在 `tsconfig.json` 的 `compilerOptions.types` 中添加类型声明,使深度引用路径获得类型提示:
180
185
 
181
186
  ```json
182
187
  {
@@ -1,5 +1,5 @@
1
1
  /** 应用配置 */
2
- declare const $app: {
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 $app;
18
+ type App = typeof app;
19
19
  export type AppConfig = Partial<App>;
20
- export declare const app: {
21
- [key in 'patient' | 'doctor' | 'merchant']: App;
22
- };
23
- export default $app;
20
+ export default app;
@@ -1,5 +1,5 @@
1
1
  /** 应用配置 */
2
- const $app = {
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 const app = {
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;
@@ -161,6 +161,9 @@ export default {
161
161
  const params = this.params;
162
162
  if (params.url) {
163
163
  params.url = decodeURIComponent(params.url);
164
+ if (/^%/.test(params.url)) {
165
+ params.url = decodeURIComponent(params.url);
166
+ }
164
167
  }
165
168
  const { type, app: _app, url: _url, ...rest } = params;
166
169
  let url = _url;
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 = String(query.primary ? `#${query.primary}`.replace(/^#+/, '#') : '') ||
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",
3
+ "version": "0.3.5",
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": "35c5484693d21d5f8e01fff8e7e568e433faf3c5"
49
+ "gitHead": "cca3de6975751c578104e7ba6ce16a398e66db8b"
50
50
  }