hbuilderx更新到4.6.6打包时候uni-app的.nvue后缀的文件编译报错

hbuilderx更新到4.6.6打包时候uni-app的.nvue后缀的文件编译报错

开发环境 版本号 项目创建方式
Windows win11专业版 23H2 HBuilderX

产品分类:uniapp/App

PC开发环境操作系统:Windows

PC开发环境操作系统版本号:win11专业版 23H2

HBuilderX类型:正式

HBuilderX版本号:4.66

手机系统:iOS

手机系统版本号:iOS 18

手机厂商:苹果

手机机型:iphone11

页面类型:nvue

vue版本:vue3

打包方式:云端

项目创建方式:HBuilderX

示例代码:

[HBuilder] 17:19:14.805 More info and automated migrator: https://sass-lang.com/d/import  
[HBuilder] 17:19:14.814    ╷  
[HBuilder] 17:19:14.819 48 │     [@if](/user/if) variable-exists(show-border-top) {  
[HBuilder] 17:19:14.827    │         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
[HBuilder] 17:19:14.832    ╵  
[HBuilder] 17:19:14.840     node_modules\@climblee\uv-ui\libs\css\variable.scss 48:6                 [@import](/user/import)  
[HBuilder] 17:19:14.846     node_modules\@climblee\uv-ui\components\uv-toolbar\uv-toolbar.vue 83:10  root stylesheet  
[HBuilder] 17:19:14.853 WARNING: 6 repetitive deprecation warnings omitted.  
[HBuilder] 17:19:14.860 X [ERROR] No matching export in "dist/build/.nvue/pages/position/Position.js" for import "default"  
[HBuilder] 17:19:14.868     <stdin>:1:7:  
[HBuilder] 17:19:14.875       1 │ import App from './pages/position/Position.js'  
[HBuilder] 17:19:14.884         ╵        ~~~  
[HBuilder] 17:19:14.891 x Build failed in 5.62s  
[HBuilder] 17:19:14.899 [uni:app-nvue-esbuild] Build failed with 1 error:  
[HBuilder] 17:19:14.904 <stdin>:1:7: ERROR: No matching export in "dist/build/.nvue/pages/position/Position.js" for import "default"  
[HBuilder] 17:19:14.910 Build failed with errors.

操作步骤:

  • 升级到最新版本,编译app

预期结果:

  • 编译成功

实际结果:

[HBuilder] 17:19:14.805 More info and automated migrator: https://sass-lang.com/d/import  
[HBuilder] 17:19:14.814    ╷  
[HBuilder] 17:19:14.819 48 │     [@if](/user/if) variable-exists(show-border-top) {  
[HBuilder] 17:19:14.827    │         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
[HBuilder] 17:19:14.832    ╵  
[HBuilder] 17:19:14.840     node_modules\@climblee\uv-ui\libs\css\variable.scss 48:6                 [@import](/user/import)  
[HBuilder] 17:19:14.846     node_modules\@climblee\uv-ui\components\uv-toolbar\uv-toolbar.vue 83:10  root stylesheet  
[HBuilder] 17:19:14.853 WARNING: 6 repetitive deprecation warnings omitted.  
[HBuilder] 17:19:14.860 X [ERROR] No matching export in "dist/build/.nvue/pages/position/Position.js" for import "default"  
[HBuilder] 17:19:14.868     <stdin>:1:7:  
[HBuilder] 17:19:14.875       1 │ import App from './pages/position/Position.js'  
[HBuilder] 17:19:14.884         ╵        ~~~  
[HBuilder] 17:19:14.891 x Build failed in 5.62s  
[HBuilder] 17:19:14.899 [uni:app-nvue-esbuild] Build failed with 1 error:  
[HBuilder] 17:19:14.904 <stdin>:1:7: ERROR: No matching export in "dist/build/.nvue/pages/position/Position.js" for import "default"  
[HBuilder] 17:19:14.910 Build failed with errors.

更多关于hbuilderx更新到4.6.6打包时候uni-app的.nvue后缀的文件编译报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

更多关于hbuilderx更新到4.6.6打包时候uni-app的.nvue后缀的文件编译报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这个错误主要是由两个问题导致的:

  1. Sass语法兼容性问题:
  • 错误提示显示@climblee/uv-ui组件库中的SCSS文件使用了variable-exists()函数,这在新版Sass中可能需要调整语法
  • 建议检查该组件库是否有更新版本,或者临时修改node_modules中的相关SCSS代码
  1. nvue页面导出问题:
  • 关键错误是No matching export for import "default"
  • 这表明Position.nvue文件没有正确导出默认模块
  • 请检查该文件是否包含export default语句

解决方案:

  1. 对于Sass问题:
  • 可以尝试在项目根目录创建vue.config.js,配置sass-loader的兼容选项
  • 或者升级/降级@climblee/uv-ui组件库版本
  1. 对于nvue导出问题:
  • 确保Position.nvue文件中有完整的导出语句:
<script>
export default {
    // 组件选项
}
</script>
回到顶部