Vue组件注册

简介: 全局注册VS局部注册全局注册组件注册后,可在全局使用,并且全局组件之间也可以相互嵌套着使用

Vue组件注册



1. 组件命名方式


// 方式一
Vue.component('my-component-name', { /* ... */ })
<my-component-name>
 // 方式二
Vue.component('MyComponentName', { /* ... */ })
<MyComponentName>
 // 方式一 在DOM中可以直接用,是有效的元素
 // 方式二 可用在单文件组件中(single-file component)


2. 全局注册VS局部注册


全局注册


组件注册后,可在全局使用,并且全局组件之间也可以相互嵌套着使用


Vue.component('component-a', { /* ... */ })
Vue.component('component-b', { /* ... */ })
Vue.component('component-c', { /* ... */ })
new Vue({ el: '#app' })
<div id="app">
  <component-a></component-a>
  <component-b></component-b>
  <component-c></component-c>
</div>


局部注册


如下写法即局部注册组件


var ComponentA = { /* ... */ }
var ComponentB = { /* ... */ }
var ComponentC = { /* ... */ }
new Vue({
  el: '#app',
  components: {
    'component-a': ComponentA,
    'component-b': ComponentB
  }
})


如要在组件b中使用组件a,要这样写:


var ComponentA = { /* ... */ }
var ComponentB = {
  components: {
    'component-a': ComponentA
  },
  // ...
}


3. 模块系统


模块中局部注册组件


import ComponentA from './ComponentA'
import ComponentC from './ComponentC'
export default {
  components: {
    ComponentA,
    ComponentC
  },
  // ...
}


模块系统中全局注册常用的基础组件


在app的入口文件中使用 require.context 进行全局注册

目录
相关文章
|
1天前
|
JavaScript 前端开发
【vue】iview如何把input输入框和点击输入框之后的边框去掉
【vue】iview如何把input输入框和点击输入框之后的边框去掉
7 0
|
1天前
|
JavaScript
【vue实战】父子组件互相传值
【vue实战】父子组件互相传值
6 1
|
1天前
|
JavaScript
vue2_引入Ant design vue
vue2_引入Ant design vue
6 0
|
1天前
|
JavaScript
vue知识点
vue知识点
10 4
|
2天前
|
存储 JavaScript 前端开发
【Vue】绝了!这生命周期流程真...
【Vue】绝了!这生命周期流程真...
|
8月前
|
JavaScript
Vue的非父子组件之间传值
全局事件总线 一种组件间通信的方式,适用于任意组件间通信
|
7月前
|
缓存 JavaScript 前端开发
Vue Props、Slot、v-once、非父子组件间的传值....
Vue Props、Slot、v-once、非父子组件间的传值....
46 0
|
8月前
|
JavaScript
Vue中父子组件传值
先在⽗组件中给⼦组件的⾃定义属性绑定⼀个⽗组件的变量
|
8月前
|
JavaScript
vue 组件传值
vue 组件传值
43 0
|
8月前
|
JavaScript
vue父子组件传值
vue父子组件传值