马自达
马自达
  • 发布:2020-01-10 14:08
  • 更新:2021-06-04 11:19
  • 阅读:3200

云端打包APP编译失败,使用vant-weapp组件

分类:HBuilderX

vant-weapp 使用小程序模拟器正常运行,打包APP与内置浏览器运行就会报错。
测试版本:
HBuilder X v2.5.1
HBuilder X v2.5.4

以下是报错内容

14:05:15.571 项目 'app.uni' 开始编译...  
14:05:16.870 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。  
14:05:16.870 正在编译中...  
14:05:18.005  INFO  Starting development server...  
14:05:32.176 Module build failed (from ./node_modules/postcss-loader/src/index.js):  
14:05:32.176 SyntaxError  
14:05:32.181 (43:193) Unclosed bracket  
14:05:32.182   41 |   
14:05:32.187   42 |   
14:05:32.188 > 43 | @import '../common/index.css';@font-face{font-weight:400;font-family:vant-icon;font-style:normal;font-display:auto;src:url(https://img.yzcdn.cn/vant/vant-icon-d3825a.woff2) format("woff2"),url(https://img.yzcdn.cn/vant/vant-icon-d3825a.woff) format("woff"),url(https://img.yzcdn.cn/vant/vant-icon-d3825a.ttf) format("truetype")}

以下是pages.json源码

{  
    "globalStyle": {  
        "navigationBarBackgroundColor":"#F7F7F7",  
        "navigationBarTextStyle": "black",  
        "backgroundColor": "#F7F7F7",  
        "usingComponents": {  
            "app-button": "/wxcomponents/vant/dist/button/index"  
        }  
    }  
}  

以下是app.vue源码

<script></script>  

<style>  
    /* Common CSS */  
    @import "/wxcomponents/vant/dist/common/index.wxss"  
</style>
2020-01-10 14:08 负责人:无 分享
已邀请:
马自达

马自达 (作者)

自问自答

打包对比官方参考项目后终于找到问题所在

官方参考项目:
Vantui Weapp For Uni-app

解决办法:

在新 HBuilder 中官方默认编译器为 v3 版本。删除即可

打开 manifest.json 选择“源码视图”修改下方示例代码

修改前

    /* 5+App特有相关 */  
    "app-plus" : {  
        "usingComponents" : true,  
        "nvueCompiler" : "uni-app",  
        "compilerVersion" : 3,  
        "splashscreen" : {  
            "alwaysShowBeforeRender" : true,  
            "waiting" : true,  
            "autoclose" : true,  
            "delay" : 0  
        }

修改后

    /* 5+App特有相关 */  
    "app-plus" : {  
        "splashscreen" : {  
            "alwaysShowBeforeRender" : true,  
            "waiting" : true,  
            "autoclose" : true,  
            "delay" : 0  
        }
一汀烟雨

一汀烟雨

我是这样解决的,先用自带格式化代码先,然后执行打包命令,不一会儿软件会自动执行压缩代码成一行,此时迅速再一次格式化代码保存即可,这个方法只能操作一次执行一次。但是管用哈

1***@qq.com

1***@qq.com - 天空飘着的羽毛

请问,如果保留V3编译器,还有啥其他的办法么?

该问题目前已经被锁定, 无法添加新回复