uniapp—封装多个全局组件,推荐使用easycom

写在前面:
随着项目的开发,抽离的公共组件越多,为了方便引用,直接在main.js文件内全局注册;为了mian.js文件代码整洁,编者就在组件所在的文件夹下创建了index.js,在这里统一注册,然后在main文件内引入,再Vue.use()。到这里就踩坑了,浏览器模拟是生效的,但是真机调试时就会报
Not found -1,16 at view.umd.min.js:1, 搜索到uniapp Vue.use() 注册自定义组件库无效的帖子,就转变了思路,发现uniapp官网有提供easycom方法。
技术栈:
vue2,uniapp
正文:
vue页面内按需引入不再赘述

一、全局组件较少,单个在main.js文件引入

main.js文件

import Vue from "vue";
import App from "./App";
 // 引入组件  
import noNetwork from "./components/no-network/no-network.vue";
// 注册
Vue.component("no-network",noNetwork);

App.mpType = "app";
const app = new Vue({
  ...App,
});

app.$mount();

在目标vue文件中直接使用

<no-net-work/>

二、多个组件统一引入(APP端错误示范,H5可以)

在所有组件的父文件夹下创建index.js
在这里插入图片描述

index.js内容如下:
在这里插入图片描述
在main文件中引入注册
在这里插入图片描述
重要的事情再强调一遍:APP真机不生效!!

三、使用uniapp官方的easycom注册多个组件

https://uniapp.dcloud.net.cn/component/#easycom
官网写的很清楚,从自己开发的组件这方面说,总结两点:
1.文件位置:放在根节点的components文件夹下;
2.文件命名:所有的组件要用同名文件夹包裹 ,为了统一最好使用相同的前缀,例 uni-,。

从开发者层面来看,全局无需注册直接使用,但是官网指出easycom是按需引入。手动👍

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值