import { defineConfig } from 'vite';
import uni from '@dcloudio/vite-plugin-uni';
export default defineConfig({
plugins: [uni()],
});
- 发布:2025-11-20 14:17
- 更新:2025-11-20 17:05
- 阅读:19
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: macos 26.1
HBuilderX类型: 正式
HBuilderX版本号: 4.76
手机系统: iOS
手机系统版本号: iOS 26
手机厂商: 苹果
手机机型: iphone 16 pro
页面类型: vue
vue版本: vue3
打包方式: 离线
项目创建方式: HBuilderX
示例代码:
操作步骤:
项目根目录新建 vite.config.ts
添加基础配置后项目无法启动,ide提示找不到@dcloudio/vite-plugin-uni
项目根目录新建 vite.config.ts
添加基础配置后项目无法启动,ide提示找不到@dcloudio/vite-plugin-uni
预期结果:
项目正常运行,并可读取到vite.config.ts中的配置
项目正常运行,并可读取到vite.config.ts中的配置
实际结果:
项目启动报错
项目启动报错
bug描述:
项目需要用到vite的一些功能。参考 https://uniapp.dcloud.net.cn/collocation/vite-config.html 后在项目中新建了vite.config.ts
并复制了最基础配置到文件中
import { defineConfig } from 'vite';
import uni from '@dcloudio/vite-plugin-uni';
export default defineConfig({
plugins: [uni()],
});
有两个错误
- '@dcloudio/vite-plugin-uni'下方报红线,提示 “找不到模块“@dcloudio/vite-plugin-uni”或其相应的类型声明。”
- 运行时报错 ✘ [ERROR] "vite" resolved to an ESM file. ESM file cannot be loaded by
require. See https://vitejs.dev/guide/troubleshooting.html#this-package-is-esm-only for more details. [plugin externalize-deps]
14:07:31.372 node_modules/esbuild/lib/main.js:1374:27:
14:07:31.372 1374 │ let result = await callback({
14:07:31.372 ╵ ^
14:07:31.372 at file:///Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:68630:35
14:07:31.372 at requestCallbacks.on-resolve (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:1374:28)
14:07:31.372 at handleRequest (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:732:17)
14:07:31.372 at handleIncomingPacket (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:757:7)
14:07:31.373 at Socket.readFromStdout (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:680:7)
14:07:31.373 at Socket.emit (node:events:517:28)
14:07:31.373 at addChunk (node:internal/streams/readable:368:12)
14:07:31.373 at readableAddChunk (node:internal/streams/readable:341:9)
14:07:31.373 at Readable.push (node:internal/streams/readable:278:10)
14:07:31.373 at Pipe.onStreamRead (node:internal/stream_base_commons:190:23)
14:07:31.373 This error came from the "onResolve" callback registered here:
14:07:31.373 node_modules/esbuild/lib/main.js:1293:20:
14:07:31.373 1293 │ let promise = setup({
14:07:31.373 ╵ ^
14:07:31.373 at setup (file:///Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:68594:27)
14:07:31.373 at handlePlugins (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:1293:21)
14:07:31.373 at buildOrContextImpl (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:979:5)
14:07:31.373 at Object.buildOrContext (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:788:5)
14:07:31.373 at /Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:2215:15
14:07:31.373 at new Promise (<anonymous>)
14:07:31.373 at Object.build (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:2214:25)
14:07:31.373 at build (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:2047:51)
14:07:31.373 at bundleConfigFile (file:///Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:68553:26)
14:07:31.373 The plugin "externalize-deps" was triggered by this import
14:07:31.373 ../../../../../../Users/yukino/MyCode/lihua-app/vite.config.ts:1:297:
14:07:31.373 1 │ ...Code/lihua-app/vite.config.ts";import { defineConfig } from 'vite';
14:07:31.373 ╵~~
14:07:31.383 failed to load config from /Users/yukino/MyCode/lihua-app/vite.config.ts
14:07:31.383 error during build:
14:07:31.383 Error: Build failed with 1 error:
14:07:31.383 node_modules/esbuild/lib/main.js:1374:27: ERROR: [plugin: externalize-deps] "vite" resolved to an ESM file. ESM file cannot be loaded byrequire. See https://vitejs.dev/guide/troubleshooting.html#this-package-is-esm-only for more details.
14:07:31.383 at failureErrorWithLog (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:1651:15)
14:07:31.383 at /Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:1059:25
14:07:31.383 at runOnEndCallbacks (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:1486:45)
14:07:31.383 at buildResponseToResult (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:1057:7)
14:07:31.383 at /Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:1086:16
14:07:31.383 at responseCallbacks.<computed> (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:704:9)
14:07:31.383 at handleIncomingPacket (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:764:9)
14:07:31.383 at Socket.readFromStdout (/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/esbuild/lib/main.js:680:7)
14:07:31.384 at Socket.emit (node:events:517:28)
14:07:31.384 at addChunk (node:internal/streams/readable:368:12)
14:07:31.392 已停止运行...
2***@qq.com (作者)
【问题解决,此帖终结】
- 参考官方demo,在package.json中补全依赖 https://gitee.com/dcloud/uni-preset-vue/blob/vite/package.json
- 在package.json中设置type为commonjs
2***@qq.com (作者)
【新问题】
17:00:30.383 请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。
17:00:30.383 编译器版本:4.76(vue3)
17:00:30.383 正在编译中...
17:00:31.234 请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。
17:00:31.235 编译器版本:4.76(vue3)
每次启动会编译两次...