能夠將頁面頂部 navbar.vue 編寫成全局插件。css
navbar.vue:vue
<template>
<div class="nav-bar">
<div class="nav-bar-inner">
<img src="/images/pnb-logo.jpg"
style="width: 120px; height: 44px;" /> | 收銀臺
</div>
</div>
</template>
<script>
export default {
props: {
bgColor: { default: '#FFFFFF' } // 背景色
},
components: {}
}
</script>
<style lang="less" scoped>
.nav-bar {
height: 64px;
line-height: 64px;
background-color: #ffffff;
& > .nav-bar-inner {
width: 1000px;
height: 64px;
margin: 0 auto;
text-align: left;
}
}
</style>
複製代碼
在 src/components/ 目錄中,新建 vue-component.js 用來install一下。bash
vue-component.js:antd
import VNavbar from './navbar/navbar.vue'
export default {
install (Vue) {
Vue.component('VNavbar', VNavbar)
}
}
複製代碼
在 main.js 註冊全局插件,那麼在每一個組件中,都能使用 <VNavbar></VNavbar>
app
main.js:less
import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
// 使用 ant design vue
import Antd from 'ant-design-vue'
import 'ant-design-vue/dist/antd.css'
// 全局插件
import vueComponent from './components/vue-component.js'
// 本身寫的公共的樣式
import '@/css/common.less'
Vue.config.productionTip = false
// 全局註冊 Antd
Vue.use(Antd)
Vue.use(vueComponent)
new Vue({
router,
store,
render: h => h(App)
}).$mount('#app')
複製代碼
在任意組件中均可以使用:ui
<template>
<div>
<VNavbar></VNavbar>
</div>
</template>
複製代碼