欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解Vue.use自定义自己的全局组件

程序员文章站 2022-03-21 15:15:35
通常我们在vue里面使用别人开发的组件,第一步就是install,第二步在main.js里面引入,第三步vue.use这个组件。今天我简单的也来use一个自己的组件。 这...

通常我们在vue里面使用别人开发的组件,第一步就是install,第二步在main.js里面引入,第三步vue.use这个组件。今天我简单的也来use一个自己的组件。

这里我用的webpack-simple这个简单版本的脚手架为例,安装就不啰嗦了,直接进入正题

首先看下目前的项目结构:

详解Vue.use自定义自己的全局组件

webpack首先会加载main.js,所以我们在main的js里面引入。我以element ui来做对比说明

import vue from 'vue'
import app from './app.vue'

// 引入element-ui组件
import elementui from 'element-ui'
import 'element-ui/lib/theme-default/index.css'

// 引入自定义组件。index.js是组件的默认入口
import loading from '../components/loading'
vue.use(loading);

vue.use(elementui);
new vue({
 el: '#app',
 render: h => h(app)
})

然后在loading.vue里面定义自己的组件模板

<!-- 这里和普通组件的书写一样 -->
<template>
  <div class="loading">
    loading...
  </div>
</template>

在index.js文件里面添加install方法

import myloading from './loading.vue'
// 这里是重点
const loading = {
  install: function(vue){
    vue.component('loading',myloading)
  }
}

// 导出组件
export default loading

接下来就是在app.vue里面使用组件了,这个组件已经在main.js定义加载了

<template>
 <div id="app">
 <!-- 使用element ui的组件 -->
 <el-button>默认按钮</el-button>

 <!-- 使用自定义组件 -->
 <loading></loading>
 </div>
</template>

下面是效果图

详解Vue.use自定义自己的全局组件

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。