美文网首页
vue.component和vue.use的用法

vue.component和vue.use的用法

作者: 清远_03d9 | 来源:发表于2019-11-13 19:01 被阅读0次

    1. 注册全局组件

    使用Vue.component()方法注册全局组件。
    第一个参数是自定义元素名称,也就是将来在别的组件中使用这个组件的标签名称。
    第二个参数是将要注册的Vue组件

    import Vue from 'vue'; 
    // 引入loading组件 
    import Loading from './loading.vue'; 
    // 将loading注册为全局组件,在别的组件中通过<loading>标签使用Loading组件 
    Vue.component('loading', Loading);
    

    2. 使用Vue.use注册插件

    Vue.use(plugin)
    

    1> 如果plugin(Vue.use的第一个参数)传入一个对象,对象中包含install方法,则调用这个plugin的install方法并将整理好的数组当成参数传入install方法中。 =>plugin.install.apply(plugin, args)

    • 如果插件没有被注册过,那么注册成功之后会给插件添加一个installed的属性值为true。Vue.use方法内部会检测插件的installed属性,从而避免重复注册插件;
    • 插件的install方法将接收两个参数,第一个是参数是Vue,第二个参数是配置项options; 在install方法内部可以添加全局方法或者属性、全局指令、mixin混入、添加实例方法、使用Vue.component()注册组件等。

    2. 如果传入的plugin就是一个函数,那么我们就直接调用这个函数并将整理好的数组当成参数传入。 =>plugin.apply(null, args)

    实例1

    import Vue from 'vue'; 
    // 这个插件必须具有install方法 
    const plugin = {
     install (Vue, options) { 
        // 添加全局方法或者属性 
        Vue.myGlobMethod = function () {}; 
        // 添加全局指令 
        Vue.directive(); 
        // 添加混入 
        Vue.mixin(); 
        // 添加实例方法 
        Vue.prototype.$xxx = function () {}; 
        // 注册全局组件 
        Vue.component() 
     } 
    } 
    
        // Vue.use内部会调用plugin的install方法
        Vue.use(plugin);
    

    实例2

    //组件文件下的index文件
    import Add from "./Add.vue"
    export default (Vue)=>{
      Vue.component(Add.name,Add)
    }
    
    
    //src下的index文件中:
    import Add from "./components/Add";
    Vue.use(Add)
    

    相关文章

      网友评论

          本文标题:vue.component和vue.use的用法

          本文链接:https://www.haomeiwen.com/subject/rcbjbctx.html