非路由组件:
如页面中header、footer部分
使用前提是:在根组件App.vue中,引入 --> 注册 --> 使用。不引入,则不能使用。
公用组件(=全局组件)
在main.js中,引入 --> 注册 为全局组件后,在任意子组件中可直接使用该全局组件。
示例:
vue2中定义全局组件:
import Vue from 'vue'
import Carouse from './components/Carouse '
import App from './App.vue'
Vue.component('Carouse ', Carouse ) // 全局注册 - 我们可以在任何地方使用
new Vue({
render: h => h(App)
}).$mount('#app')
vue3中定义全局组件:
import { createApp } from 'vue'
import App from './App.vue'
// 定义全局组件 1.main.js中导入该组件
import greeting from "@/components/greeting";
// 定义全局组件 2.创建app
const app = createApp(App)
// 定义全局组件 3.创建全局组件
app.component("greeting",greeting)
app.mount('#app')