通过Cli方式创建uni-app常见错误整理

文章目录

  • 通过Cli方式创建uni-app常见错误整理
    • 错误一 :exports is not not defined
    • 错误二:this.getResolve is not a function
    • 错误三:全局配置Vue.config.ignoreElements 后报 uni-* 组件未定义

错误一 :exports is not not defined

  • 错误描述

    exports is not defined
    
  • 错误截图
    在这里插入图片描述

  • 错误原因

    更新uni-app 的时候一并更新了@babel/runtime ,@babel/runtime 更新到了 7.13.x,有较大改动,引起兼容问题。

  • 解决办法

    1.回退 @babel/runtime 版本到7.12.0

    删除 node_modules 目录和 package-lock.json 文件,在 package.json 文件中增加开发依赖
    “@babel/runtime”: “~7.12.0”,执行 npm install 重新安装依赖即可

    2.注释或者删除babel.config.js文件
    3.注释掉babel.config.js 文件中modules: ‘commonjs’, 语句,代码如下

    module.exports = {
    	presets: [
    	
    	 [
    	    '@vue/app',
    	    { 
    	      // modules: 'commonjs', 注释掉该条语句,错误消失。
    	      useBuiltIns: process.env.UNI_PLATFORM === 'h5' ? 'usage' : 'entry'
    	    }
    	 ]
    	],
    	plugins
    	}
    
  • 参考链接
    【报Bug】使用cli方式创建的项目本地 运行 报exports is not defined

错误二:this.getResolve is not a function

  • 错误描述

    this.getResolve is not a function
    
  • 错误截图
    在这里插入图片描述

  • 问题原因
    node-sass 和sass-loader 版本过高导致编译报错

  • 解决办法
    回退node-sass 和 sass-loader 到低版本,目前"node-sass": “^4.14.1”,和"sass-loader": "^8.0.2"版本正常。回退方法同上,亦可通过npm uninstall卸载后安装指定版本。

错误三:全局配置Vue.config.ignoreElements 后报 uni-* 组件未定义

  • 错误描述
    因在业务中需要使用微信的开发标签,结果在页面中插入开放标签后Vue控制台报错,Unknown custom element: 通过配置 Vue.config.ignoredElements = [“wx-open-launch-weapp”]; 结果报错Unknown custom element: uni-*

  • 错误截图
    在这里插入图片描述

  • 问题原因

    1.通过配置Vue.config.ignoredElements 覆盖了uni-app 的原有配置,因此导致Vue控制台报错找不到自定义组件
    2.组件没有注册,需要在pages.json中注册,如果是使用Uniapp开发,新建组件的时候会自动添加到pages.json中。

  • 解决办法

    配置微信开放标签的同时,将uni自定义组件也配置在内

    Vue.config.ignoredElements = [“wx-open-launch-weapp”, /^uni-/];
    // 或: Vue.config.ignoredElements.push(“wx-open-launch-weapp”);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值