diff --git a/packages/taro-platform-alipay/package.json b/packages/taro-platform-alipay/package.json index 36d6c218806..ac5377aaa1e 100644 --- a/packages/taro-platform-alipay/package.json +++ b/packages/taro-platform-alipay/package.json @@ -35,6 +35,7 @@ "@tarojs/shared": "workspace:*" }, "peerDependencies": { + "@tarojs/components": "workspace:*", "@tarojs/service": "workspace:*", "@tarojs/shared": "workspace:*" } diff --git a/packages/taro-platform-jd/package.json b/packages/taro-platform-jd/package.json index 57811295f98..3a178d14e43 100644 --- a/packages/taro-platform-jd/package.json +++ b/packages/taro-platform-jd/package.json @@ -31,9 +31,11 @@ }, "devDependencies": { "@tarojs/service": "workspace:*", - "@tarojs/shared": "workspace:*" + "@tarojs/shared": "workspace:*", + "@tarojs/components": "workspace:*" }, "peerDependencies": { + "@tarojs/components": "workspace:*", "@tarojs/service": "workspace:*", "@tarojs/shared": "workspace:*" } diff --git a/packages/taro-platform-jd/rollup.config.mjs b/packages/taro-platform-jd/rollup.config.mjs index 61683d64d58..8531851d8f9 100644 --- a/packages/taro-platform-jd/rollup.config.mjs +++ b/packages/taro-platform-jd/rollup.config.mjs @@ -50,4 +50,15 @@ const runtimeUtilsConfig = { ...base } -export default [compileConfig, runtimeConfig, runtimeUtilsConfig] +// React 下 webpack 会 alias @tarojs/components 为此文件 +const otherConfig = { + input: path.join(cwd, 'src/components-react.ts'), + output: { + file: path.join(cwd, 'dist/components-react.js'), + format: 'es', + sourcemap: true + }, + ...base +} + +export default [compileConfig, runtimeConfig, runtimeUtilsConfig, otherConfig] diff --git a/packages/taro-platform-jd/src/components-react.ts b/packages/taro-platform-jd/src/components-react.ts new file mode 100644 index 00000000000..c9bc9c15782 --- /dev/null +++ b/packages/taro-platform-jd/src/components-react.ts @@ -0,0 +1,4 @@ +// For React.createElement's type +export * from '@tarojs/components/mini' +export const Editor = 'editor' + diff --git a/packages/taro-platform-jd/src/program.ts b/packages/taro-platform-jd/src/program.ts index d04f86d4c49..1a1cefeda21 100644 --- a/packages/taro-platform-jd/src/program.ts +++ b/packages/taro-platform-jd/src/program.ts @@ -9,6 +9,7 @@ export default class JD extends TaroPlatformBase { platform = 'jd' globalObject = 'jd' projectConfigJson = 'project.jd.json' + taroComponentsPath = `${PACKAGE_NAME}/dist/components-react` runtimePath = `${PACKAGE_NAME}/dist/runtime` fileType = { templ: '.jxml', diff --git a/packages/taro-platform-swan/package.json b/packages/taro-platform-swan/package.json index f341dfaf23d..2e343ac7812 100644 --- a/packages/taro-platform-swan/package.json +++ b/packages/taro-platform-swan/package.json @@ -35,6 +35,7 @@ "@tarojs/shared": "workspace:*" }, "peerDependencies": { + "@tarojs/components": "workspace:*", "@tarojs/service": "workspace:*", "@tarojs/shared": "workspace:*" } diff --git a/packages/taro-platform-tt/package.json b/packages/taro-platform-tt/package.json index fd80b38aec6..bbf5dbd54c2 100644 --- a/packages/taro-platform-tt/package.json +++ b/packages/taro-platform-tt/package.json @@ -35,6 +35,7 @@ "@tarojs/shared": "workspace:*" }, "peerDependencies": { + "@tarojs/components": "workspace:*", "@tarojs/shared": "workspace:*", "@tarojs/service": "workspace:*" } diff --git a/packages/taro-platform-weapp/package.json b/packages/taro-platform-weapp/package.json index 48c92f3da84..56dad4e0000 100644 --- a/packages/taro-platform-weapp/package.json +++ b/packages/taro-platform-weapp/package.json @@ -34,6 +34,7 @@ "@tarojs/shared": "workspace:*" }, "peerDependencies": { + "@tarojs/components": "workspace:*", "@tarojs/service": "workspace:*", "@tarojs/shared": "workspace:*" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 13ac8d2b380..4edcd64f12e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1547,6 +1547,9 @@ importers: packages/taro-platform-jd: devDependencies: + '@tarojs/components': + specifier: workspace:* + version: link:../taro-components '@tarojs/service': specifier: workspace:* version: link:../taro-service