Skip to content

Commit a5014bf

Browse files
authored
chore: show unadapted components for HarmonyOS in Mini Programs and H5 (#2999)
* chore: 通过 pre 命令在 h5 和小程序预览或构建的时候,去掉鸿蒙适配的限制,从而展示出未适配鸿蒙的组件 * docs: update docs * docs: update docs
1 parent 063c3aa commit a5014bf

File tree

3 files changed

+18
-10
lines changed

3 files changed

+18
-10
lines changed

README_ZH.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,11 @@ pnpm run dev
7171

7272
```
7373

74-
### 本地运行 Taro 相关的预览
74+
### 本地运行 Taro 环境
75+
76+
**注意:在 Taro 环境新增 pnpm pre 钩子,用于 H5 或小程序预览时显示未适配鸿蒙的组件,环境变量可通过 predev:taro 命令查看。**
77+
78+
#### 本地运行 Taro 相关的预览
7579

7680
````sh
7781
# 克隆仓库
@@ -94,7 +98,7 @@ pnpm dev:taro jd
9498
# 其他平台 参考 demo 目录中 package.json 的 script
9599
````
96100
97-
### 本地运行 JDTaro 相关的预览
101+
#### 本地运行 JDTaro 相关的预览
98102
99103
1. 仓库根目录下增加 .npmrc 文件,增加如下配置:
100104

package.json

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@
4949
},
5050
"scripts": {
5151
"add": "node scripts/create-component-mode.js && npm run prepare",
52-
"add:taro:config": "node scripts/taro/generate-taro-route.js",
5352
"checked": "npm run generate:file && tsc --project ./tsconfig.h5.json --noEmit",
5453
"checked:taro": "npm run generate:file:taro && tsc --project ./tsconfig.taro.json --noEmit",
5554
"changelog": "node ./scripts/generate-changelog.js",
@@ -58,19 +57,22 @@
5857
"dev:rtl": "VITE_RTL=rtl vite --open --force",
5958
"dev:jrkf": "VITE_APP_PROJECT_ID=jrkf vite --open --force",
6059
"dev:taro:rn:dark": "THEME=dark pnpm dev:taro:rn",
61-
"dev:taro": "pnpm run update:taro:entry && pnpm --dir ./packages/nutui-taro-demo dev",
60+
"predev:taro": "SKIPDD=1 pnpm run update:taro:entry",
61+
"dev:taro": "pnpm --dir ./packages/nutui-taro-demo dev",
6262
"dev:taro:h5": "pnpm dev:taro h5",
63-
"dev:jdtaro": "pnpm run update:taro:entry && JD=1 pnpm --dir ./packages/nutui-taro-demo dev",
64-
"dev:jdtaro:jdharmonycpp": "pnpm run clone:jdharmony cpp &&pnpm run update:taro:entry && JD=1 pnpm --dir ./packages/nutui-taro-demo dev:jdharmonycpp",
63+
"predev:jdtaro": "SKIPDD=1 pnpm run update:taro:entry",
64+
"dev:jdtaro": "JD=1 pnpm --dir ./packages/nutui-taro-demo dev",
65+
"dev:jdtaro:jdharmonycpp": "pnpm run clone:jdharmony cpp && pnpm run update:taro:entry && JD=1 pnpm --dir ./packages/nutui-taro-demo dev:jdharmonycpp",
6566
"dev:jdtaro:jdharmony": "pnpm run clone:jdharmony && pnpm run update:taro:entry && JD=1 pnpm --dir ./packages/nutui-taro-demo dev:jdharmony",
66-
"dev:taro:jmapp": "pnpm run update:taro:entry && JD=1 pnpm --dir ./packages/nutui-taro-demo dev:jmapp",
67+
"dev:taro:jmapp": "JD=1 pnpm --dir ./packages/nutui-taro-demo dev:jmapp",
6768
"build": "node ./scripts/replace-css-var.js && npm run checked && node scripts/build.mjs",
6869
"build:taro": "node ./scripts/replace-css-var.js && npm run checked:taro && node scripts/build-taro.mjs",
6970
"build:taro:jmapp": "npm run checked:taro && VITE_APP_PROJECT_ID=jmapp node scripts/build-taro.mjs",
7071
"build:site": "npm run checked && vite build --config vite.config.site.mts",
7172
"build:site:jmapp": "npm run checked && VITE_APP_PROJECT_ID=jmapp vite build",
72-
"build:taro:site": "pnpm update:taro:entry && npm run checked:taro && npm run generate:file:taro:pages && pnpm --dir ./packages/nutui-taro-demo build:h5",
73-
"build:jdtaro:site": "pnpm update:taro:entry && npm run checked:taro && npm run generate:file:taro:pages && JD=1 pnpm --dir ./packages/nutui-taro-demo build:h5",
73+
"prebuild:taro:site": "SKIPDD=1 pnpm run update:taro:entry",
74+
"build:taro:site": "npm run checked:taro && npm run generate:file:taro:pages && pnpm --dir ./packages/nutui-taro-demo build:h5",
75+
"build:jdtaro:site": "npm run checked:taro && npm run generate:file:taro:pages && JD=1 pnpm --dir ./packages/nutui-taro-demo build:h5",
7476
"build:taro:site:jmapp": "npm run checked:taro && VITE_APP_PROJECT_ID=jmapp npm run generate:file:taro:pages && pnpm --dir ./packages/nutui-taro-demo build:h5",
7577
"build:jdtaro:site:jmapp": "npm run checked:taro && VITE_APP_PROJECT_ID=jmapp npm run generate:file:taro:pages && JD=1 pnpm --dir ./packages/nutui-taro-demo build:h5",
7678
"generate:file": "node scripts/generate-nutui.js",

scripts/harmony/update-taro-entry.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@ const adaptedArray = []
1818
config.nav.map((item) => {
1919
item.packages.forEach((element) => {
2020
const { name, version, dd } = element
21-
if (!dd) return // 未适配不导出
21+
// 通过 pre 命令在 h5 和小程序预览或构建的时候,去掉鸿蒙适配的限制,从而在预览H5 和小程序时展示出未适配鸿蒙的组件
22+
// 例如 Form 组件未适配鸿蒙但适配了 H5 和小程序,启动 H5或小程序开发环境后,Form 组件并未被编译到开发环境中。导致无法查看 Form 组件。
23+
if (!dd && !process.env.SKIPDD) return // 未适配不导出
2224
if (specialComponent(name)) return
2325
adaptedArray.push({
2426
...element,

0 commit comments

Comments
 (0)