uniapp实现一个地方导入,全部页面无需手动使用都能显示的组件

提示!此方法适用于vue2语法的uniapp,且只能在h5中使用!小程序无法使用

最近uniapp有个需求,要在所有页面都显示客服按钮,虽然使用easycom可以省略导入和注册这两步,但依然需要在每个页面的template里编写<your-com />才行,感觉这样还是不太好,于是经过我辛苦的搜索,找到了在h5实现的方法

在main.js里编写,整体实现方法其实和vue2编写js调用式组件差不多

// 首先导入你的组件
import yourCom from './components/your-com/your-com.vue';

app.$mount()
// 一定要编写在mount之后,这里延迟挂载可以避免一些奇怪问题
setTimeout(() => {
    // 使用extend创建组件构造器
	const yourComConstructor = Vue.extend(yourCom)
	// 创建组件实例
	const yourComEl = new yourComConstructor()
	// 把组件实例挂载出来的dom节点追加到body中(这里可以根据你的实际情况追加到不同节点)
	document.body.appendChild(yourComEl.$mount().$el)
}, 1000)

这样这个组件就不用在其他vue页面的template里编写<your-com />了,所有的页面都能显示,不过只能在h5里用,如果有人知道怎么在小程序里实现这种效果,欢迎留言指导

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

独断万古的伊莉雅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值