index.js
import Vue from 'vue'import BlogMessage from './BlogMessage.vue'const MessageBox = Vue.extend(BlogMessage) // 创建的是一个组件构造器,不是实例const Message = { install: (options, type, duration) => {  if (options === undefined || options === null) {   options = {    content: ''   }  } else if (typeof options === 'string' || typeof options === 'number') {   options = {    content: options   }   if (type != undefined && options != null) {    options.type = type;   }  }  let instance = new MessageBox({   data: options  }).$mount()  document.body.appendChild(instance.$el) // 添加dom元素  Vue.nextTick(() => { // dom元素渲染完成后执行回调   instance.visible = true  }) }}Vue.prototype.$message = Message.install;['success', 'error'].forEach(type => { Vue.prototype.$message[type] = (content) => {  return Vue.prototype.$message(content, type) }})export default Message使用组件
1.全局注册
import Vue from 'vue';import Message from '@/components/common/message';Vue.use(Message);
2.调用方法
 private test1() {  this.$message("这是一条普通消息"); } private test2() {  this.$message.success("这是一条成功消息");  // this.$message("这是一条成功消息", "success"); } private test3() {  this.$message.error("这是一条失败消息");  // this.$message("这是一条失败消息", "error"); }以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
您可能感兴趣的文章:
- vue.js开发实现全局调用的MessageBox组件实例代码



