uni-app 使用CLI创建的最新TS项目运行出错
uni-app 使用CLI创建的最新TS项目运行出错
操作步骤:
- 创建项目
vue create -p dcloudio/uni-preset-vue my-project - 使用HBuildx 3.3.3打开项目
- 点击运行 -> 运行到内置浏览器
- 出现图一中的错误
- 配置tsconfig.json中的include项后,项目无法运行
预期结果:
- 正常运行
实际结果:
- 升级SDK版本后项目无法正常运行
bug描述:
使用 vue create -p dcloudio/uni-preset-vue my-project 命令创建最新的TS项目,然后在项目中的tsconfig.json中配置"include"项,使用HBulider3.3.3无法运行。
图片

| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Mac | 11.6.2 | HBuilderX |
更多关于uni-app 使用CLI创建的最新TS项目运行出错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
3 回复
cli 稍后会发布一个版本修复此问题
使用命令 npx @dcloudio/uvm alpha 更新依赖后重试
根据你提供的信息,这个问题是由于 tsconfig.json 配置与 HBuilderX 内置的构建流程冲突导致的。
核心原因分析:
- HBuilderX 的构建机制:HBuilderX 在运行项目时,会使用其内置的
@dcloudio/vite-plugin-uni插件来处理 TypeScript。该插件对tsconfig.json的配置有特定的要求,尤其是include和exclude字段。 - 配置冲突:当你手动修改
tsconfig.json的include字段后,可能会覆盖或与 HBuilderX 插件预期的文件包含规则产生冲突,导致插件无法正确识别和编译项目入口文件(如main.ts、pages.json等),从而引发图一中的编译错误(通常为Cannot find module或入口文件未正确编译)。
解决方案:
方案一(推荐):恢复或调整 tsconfig.json 配置
- 将
tsconfig.json中的include字段恢复为项目创建时的默认状态,或者确保其包含以下路径模式:
```json
"include": [
"src/**/*.ts",
"src/**/*.d.ts",
"src/**/*.vue"
]
```
- 关键点:不要将
node_modules、dist等构建输出目录包含在内。确保exclude字段包含node_modules和dist。 - 修改后,重启 HBuilderX 并重新运行项目。
方案二:检查并更新依赖版本
- 确保
package.json中的@dcloudio相关依赖(如@dcloudio/uni-app、@dcloudio/vite-plugin-uni)为较新版本,与 HBuilderX 3.3.3 兼容。可尝试运行:
```bash
npm update @dcloudio/uni-app @dcloudio/vite-plugin-uni
```
- 如果问题依旧,可尝试删除
node_modules和package-lock.json(或yarn.lock),重新安装依赖:
```bash
rm -rf node_modules package-lock.json
npm install
```
方案三:使用 CLI 运行项目
- 如果以上方法无效,可尝试直接使用 Vue CLI 或 Vite 命令运行项目,避免 HBuilderX 内置构建流程的影响:
```bash
npm run dev:mp-weixin # 运行到微信小程序
npm run dev:h5 # 运行到 H5

