位置: IT常识 - 正文

uniapp全局组件全局使用(不在每个页面template使用,仅支持H5),函数式调用全局组件方法(uniapp全局对象)

编辑:rootadmin
uniapp全局组件全局使用(不在每个页面template使用,仅支持H5),函数式调用全局组件方法

推荐整理分享uniapp全局组件全局使用(不在每个页面template使用,仅支持H5),函数式调用全局组件方法(uniapp全局对象),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp全选,uni-app全局组件,uniapp全选,uniapp全选,uniappui组件,uniappui组件,uniapp全局变量四种实现方式,uniapp 全局组件,内容如对您有帮助,希望把文章链接给更多的朋友!

 最简单的使用,在 main.js 编写如下代码,即可将 xxx 组件在每个页面显示

// main.js// 引入组件import xxx from "@/components/xxx.vue";// 将该组件挂载在document.body下document.body.appendChild(new xxx().$mount().$el);函数式调用全局组件方法

场景,某些 toast 组件需要如下方式使用

<template> <toast ref="toast"></toast></template><script> export default { methods:{ showToast(){ this.$refs.toast.show(); } } }</script>

经改造,最终使用方法为:

this.$r.toast().show();

实现方式:

1、在 utils 目录下新建 render.js

2、在 main.js 下将 render.js 绑定在 this 下

// ...import render from "@/utils/render";Vue.prototype.$r = render;// ...

3、在 render.js 内将组件绑定至全局

// utils/render.js// 引入vueimport vm from "vue";// toast组件import toast from "@/components/xxx/toast.vue";export default { /** * 全局toast弹窗 */ toast(){ // 全局注册toast组件 const toastCom = vm.component('toast',toast); // 获取uniapp根节点 const uniappRoot = document.getElementsByTagName("uni-app")[0]; // 初始化toast组件const toastComp = new toastCom(); // 这里我每个组件内都有一个固定id,用来禁止同意组件生成多次if(document.getElementById(toastComp.id)){document.getElementById(toastComp.id).remove();} // 将toast组件添加在uniapp根节点上uniappRoot.appendChild(toastComp.$mount().$el);return toastComp; }}uniapp全局组件全局使用(不在每个页面template使用,仅支持H5),函数式调用全局组件方法(uniapp全局对象)

4、最后我们可以直接函数式调用组件方法与设置组件属性

// 此show方法在toast组件的methods中定义this.$r.toast().show();// 此duration属性在toast组件的data中this.$r.toast().duration;

嘿,愿你代码永无bug,人生永无坎坷!

嘿,愿你代码永无bug,人生永无坎坷!

嘿,愿你代码永无bug,人生永无坎坷!

嘿,愿你代码永无bug,人生永无坎坷!

嘿,愿你代码永无bug,人生永无坎坷!

嘿,愿你代码永无bug,人生永无坎坷!

广告:(提供学习机会)

       前端交流学习群:1063233592

       PHP学习交流群:901759097

       前后端学习交流微信群:加我微信,填写验证消息(前端),拉你进群

本文链接地址:https://www.jiuchutong.com/zhishi/276371.html 转载请保留说明!

上一篇:初级会计中应收票据质押给银行怎么做账?(初级会计应收账款例题)

下一篇:Win10 Dev 预览版 20279(FE_RELEASE)更新详解(win10 dev版本)

  • 应收账款逾期未收回账务处理
  • 季度申报所得税费用怎么做
  • 银行贷款减值准备转回处理
  • 税收的基本特点有
  • 权责发生制和收付实现制是会计基础吗
  • 纳税申报表多缴了怎么办
  • 暂估入账估低了怎么办
  • 营业外收入需要计提销项税吗
  • 借款合同的印花税税率
  • 房屋租赁合同样本书
  • 现代服务业要满足什么条件才转一般纳税人
  • 合同印花税进哪个科目
  • 非正常损失的购进货物进项税不能抵扣
  • 物流行业主营业务成本会计分录
  • 多缴税款退回及退回
  • 企业的固定资产可以按照其价值和使用情况
  • 金税盘发票份数没有显示
  • 一次性劳务费需要交税吗
  • 小规模减半征收什么时候开始
  • 期权的行权收益
  • 以现金收回已核销的不良贷款分录?
  • macxi
  • 如何解决win10系统复制文件速度
  • 常见转移支付事项有哪些情况
  • 收到以前年度退回的企业所得税
  • Linux怎么使用vi
  • KB5004296无法安装,提示错误代码:0x800f0990的解决方法
  • php读取word
  • 国内保理业务是担保类中间业务吗
  • 社保征集单是什么样子的
  • Win11 Build22000.346 Beta/Release预览版发布 KB5007262更新汇总
  • 损益类科目月末结转到哪个科目
  • php顺序查找和二分查找
  • php函数写法
  • 现金流量表中如何考虑折旧费
  • 研发费用怎样进项抵扣
  • 利息收入属于什么税目
  • web课程设计模板
  • 起征点适用于
  • 联营企业分得的利润
  • mysql函数nvl
  • 咨询服务业的收入确认原则
  • 金税盘如何读入新购电子发票?
  • 财务咨询公司能出尽调报告吗
  • vuex 3
  • mongodb reference
  • 阿里云安装centos8
  • 销售防疫物资是什么意思
  • 非营利组织免征企业所得税的通知
  • 何谓应该是什么意思
  • sql无法运行
  • 营利性与非营利性的关系
  • 汽车折旧会计凭证怎么做
  • 润滑油消费税征收环节税屋
  • 本年利润要结转吗为什么
  • 多计费用以前年度损益调整账务处理
  • 去银行更换帐户需要什么
  • 实收资本可以大过注册资本吗
  • 定额发票和增值税普通发票的区别
  • 会计净资产计算公式
  • win10如何设置快捷键
  • RadioSvr.EXE - RadioSvr是什么进程 有什么用
  • openfiledialog怎么用
  • win7e盘不见了怎么恢复
  • win10更新需要重启怎么办
  • linux无法使用ls
  • linux限制用户cpu使用
  • 批处理命令是什么语言
  • dos 浏览器
  • unity协程会阻塞主线程吗
  • python之virtualenv的简单使用方法(必看篇)
  • js继承原型链
  • javascript基础入门视频教程
  • bootstraptable方法
  • 手机 日常应用 单核 多核
  • 税务机关一案双查管理办法
  • 湖北税务查询电话
  • 出口退税收入怎么做账
  • 放管服改革存在的不足
  • 税务师如何执业
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设