vue組件(全局,局部,動態(tài)加載組件)
說說Vue.js組件
什么是組件:組件是Vue.js最強(qiáng)大的功能之一。組件可以擴(kuò)展HTML元素,封裝可重用的代碼。在較高層面上,組件是自定義的元素,Vue.js的編譯器為它添加特殊功能。在有些情況下,組件也可以是原生HTML元素的形式,以is特性擴(kuò)展。
vue組件有兩種,一種是全局組件,一種是局部組件。整個項目經(jīng)常用到的用全局寫法,用到比較少的專供特定頁面用的使用局部組件。
one----全局組件引入寫法:在項目的main.js中:
第一種,在main.js直接寫template:' 模版字符串'
Vue.component('tab-home', { template: `<div>Home component</div>` }) Vue.component('tab-posts', { template: `<div>Posts component</div>` }) Vue.component('tab-archive', { template: `<div>Archive component</div>` })
第二種,分別寫tab-home.vue Tab-Posts'.vue Tab-Archive'.vue然后import TabHome from ‘ Tab-Home.vue '
Vue.use( TabHome); // 自定義全局組件的時候需要Vue.use(); Vue.component('tab-home', TabHome)); //初始化組件 two ----局部組件引入 ,寫在需要的引入的組件,如helloworld import TabAa from './tab-aa.vue' import TabBb from './tab-bb.vue' import TabCc from './tab-cc.vue' export default { name: 'HelloWorld', components:{TabAa,TabBb,TabCc}, three----動態(tài)組件(tab切換 使用:is="currentTabComponent") <template> <> <button v-for="tab in tabs" v-bind:key="tab" v-bind:class="['tab-button', { active: currentTab === tab }]" v-on:click="currentTab = tab" >{{ tab }}</button> <component v-bind:is="currentTabComponent" class="tab" ></component> </div> </template> export default { name: 'HelloWorld', components:{TabAa,TabBb,TabCc}, data () { return { currentTab: 'Home', tabs: ['Home', 'Posts', 'Archive','Aa','Bb','Cc'], loginType:'username', msg: 'Welcome to Your Vue.js App' } }, computed: { currentTabComponent: function () { return 'tab-'+this.currentTab.toLowerCase() } }, 樣式: .tab-button { padding: 6px 10px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid #ccc; cursor: pointer; background: #f0f0f0; margin-bottom: -1px; margin-right: -1px; } .tab-button:hover { background: #e0e0e0; } .tab-button.active { background: #e0e0e0; } .tab { border: 1px solid #ccc; padding: 10px; }
總結(jié)
以上所述是小編給大家介紹的vue組件(全局,局部,動態(tài)加載組件)實例詳解,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!
- vue3動態(tài)加載組件以及動態(tài)引入組件詳解
- Vue3的setup在el-tab中動態(tài)加載組件的方法
- vue如何動態(tài)加載組件詳解
- vue2.* element tabs tab-pane 動態(tài)加載組件操作
- Vue加載組件、動態(tài)加載組件的幾種方式
- vue3+vite項目中按需引入vant報錯:Failed?to?resolve?import的解決方案
- vue3+vite引入插件unplugin-auto-import的方法
- Vue?import?from省略后綴/加載文件夾的方法/實例詳解
- 在Vue中使用動態(tài)import()語法動態(tài)加載組件
相關(guān)文章
Vue3+script setup+ts+Vite+Volar搭建項目
本文主要介紹了Vue3+script setup+ts+Vite+Volar搭建項目,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08vue3子組件上綁定(v-model="xx")父組件傳過來的值后報錯解決
這篇文章主要給大家介紹了關(guān)于vue3子組件上綁定(v-model="xx")父組件傳過來的值后報錯解決辦法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用vue3具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2023-07-07element-ui動態(tài)級聯(lián)選擇器回顯問題詳解(二十多行代碼搞定)
大家在使用element-ui的時候肯定會遇到這樣一個問題,就是在你使用級聯(lián)選擇器的回顯問題,下面這篇文章主要給大家介紹了關(guān)于element-ui動態(tài)級聯(lián)選擇器回顯問題的相關(guān)資料,需要的朋友可以參考下2023-03-03vue中如何實現(xiàn)后臺管理系統(tǒng)的權(quán)限控制的方法步驟
這篇文章主要介紹了vue中如何實現(xiàn)后臺管理系統(tǒng)的權(quán)限控制的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09關(guān)于vue中hash和history的區(qū)別與使用圖文詳解
vue-router中有hash模式和history模式,下面這篇文章主要給大家介紹了關(guān)于vue中hash和history的區(qū)別與使用的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03