怎么在将vue组件挂载到全局

  介绍

这篇文章给大家介绍怎么在将vue组件挂载到全局,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

1,定义一个vue文件实现对原组件的再次封装

主要。vue

& lt; template>   & lt; b-alert   类才能=癮lert-wrap  pt-4  pb-4"   :才能显示=癷sAutoClose"   :=氨涮宀拍躷ype"可解雇的   :才能消失=皌rue"   @dismiss-count-down才能=癱ountDownChanged"   @dismissed才能=癲ismiss"   祝辞才能;   ,,{{味精}}   & lt;才能/b-alert>   & lt;/template>   & lt; script>   export  default  {/* *   *,才能参考:https://bootstrap-vue.js.org/docs/components/alert   *,才能@param {字符串|数字},msg 弹框内容   *,才能@param {测试器},type 弹出框类型,对应bootstrap-vue中variant 可选值有:& # 39;主要# 39;& # 39;二次# 39;,& # 39;成功# 39;& # 39;危险# 39;& # 39;预警# 39;,& # 39;信息# 39;& # 39;光# 39;,& # 39;黑暗# 39;默认值为,& # 39;信息# 39;   *,才能@param {布尔},autoClose 是否自动关闭弹出框   *,才能@param {号码},duration 弹出框存在时间(单位:秒)   *,才能@param {函数},closed 弹出框关闭,手动及自动关闭都会触发   ,*/,道具:{   ,,味精:{   ,,,类型:字符串,,,   ,,,默认值:& # 39;& # 39;   ,,},   ,,类型:{   ,,,类型:字符串,   ,,,默认值:& # 39;信息# 39;   ,,},   ,,autoClose: {   ,,,类型:布尔,   ,,默认值:true   ,,},   时间才能:{   ,,,类型:数字,   ,,默认值:3   ,,},   封闭的才能:{   ,,,类型:功能,   ,,默认值是零   ,,}   },   ,方法:{   dismiss 才能;(),{   ,,this.duration =0   ,,},   countDownChanged 才能;(持续时间),{   ,,this.duration =,持续时间   ,,}   },   ,计算:{   isAutoClose 才能;(),{   ,,if  (this.autoClose), {   ,,,return  this.duration   ,,},{else    ,,,return 真实的   ,,}   ,,}   },   ,看:{   duration 才能;(),{   ,,if  (this.duration ===, 0), {   ,,,if  (this.closed), this.closed ()   ,,}   ,,}   ,}   }   & lt;/script>   & lt; style  scoped>   .alert-wrap  {   位置:大敌;固定;   ,宽度:600 px;   ,最高:80 px;   ,左:50%;   ,margin-left: -200 px;   ,z - index: 2000;   ,字体大小:1.5快速眼动;   }   & lt;/style>

这里主要就是对组件参数,回调事件的一些处理,与其他处理组件的情况没有什么区别

2,定义一个js文件挂载到Vue上,并和我们定义的组件进行交互

索引。js

import  Alert 得到& # 39;。/main.vue& # 39;   import  Vue 得到& # 39;vue # 39;   let  AlertConstructor =, Vue.extend(警报)   let 实例   let  seed =1   let  index =2000   const  install =,(),=祝辞,{   ,Object.defineProperty (Vue.prototype, & # 39;美元提醒# 39;,,{   get 才能;(),{   ,,let  id =, & # 39; message_& # 39; + + +,种子   ,,const  alertMsg =, options =祝辞,{   ,,,instance =, new  AlertConstructor ({   ,,,,propsData:选项   ,,,})   ,,,指数+ +   ,,,instance.id =, id   ,,,instance.vm 美元=实例。山()   ,,,document.body.appendChild (instance.vm el)美元。   ,,,instance.vm el.style.zIndex 美元;=,指数   ,,,return  instance.vm   ,,}   ,,return  alertMsg   ,,}   ,})   }   export  default 安装

其主要思想是通过调用这个方法给组件传值,然后附加到身体下

3,最后需要在主要。js中使用一下

import  Alert 得到& # 39;@/组件/警告/指数# 39;   Vue.use(警报)

4,使用

。美元警报({味精:& # 39;欢迎━(*’?,急性;*)ノ亻! & # 39;})

5, confrim的封装也是一样的

主要。vue

& lt; template>   & lt; b-modal   v=?才能destroy"   v模型才能=癷sShow"   title=安拍芪萝疤崾尽?   @change才能=癿odalChange"   @show才能=癿odalShow"   @shown才能=癿odalShown"   @hide才能=癿odalHide"   @hidden才能=癿odalHidden"   @ok才能=癿odalOk"   @cancel才能=癿odalCancel"   ,,:集中=皌rue"   ,,:hide-header-close=癶ideHeaderClose"   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

怎么在将vue组件挂载到全局