vue組件之全局注冊和局部注冊方式
一、什么是組件
組件:是由HTML、CSS、JavaScript所組成,是把某塊效果界面封裝起來,提供了界面效果【代碼】的復(fù)用性【類似于Bootstrap】
二、全局注冊
全局注冊:當(dāng)vue創(chuàng)建的時候,不管這個組件是否使用,都會被加載,這樣的方式會比較占內(nèi)存
入門程序
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="../../public/js/vue.min.js"></script>
</head>
<body>
<div id="app">
<!-- 組件-->
<button-count></button-count>
</div>
</body>
</html>
<script>
//編寫組件
//參數(shù)一:自定義的組件名稱【注意:不要全大寫,如果是二個單詞拼接,最好都是小寫,用-連接】
//參數(shù)二:對象
Vue.component('button-count', {
template: "<button @click='count++'>{{count}}</button>",
data: function () {
return {
}
}
})
new Vue({
el: '#app',
})
</script>注意: 在注冊vue組件的時候,一定不能忽略new Vue
三、局部注冊
局部注冊:當(dāng)我們使用到某個組件,該組件才會被創(chuàng)建,如果不使用該組件,那么該組件不會被創(chuàng)建。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript" src="../public/js/vue.min.js"></script>
</head>
<body>
<div id="app">
<!--組件名稱-->
<button-count></button-count>
</div>
<script>
//創(chuàng)建組件
let ButtonCount = {
template:"<h1>這是一個組件</h1>"
}
new Vue({
el:"#app",
components:{
//當(dāng)組件名稱二個首字母大寫的時候
//html在識別的時候,會全部轉(zhuǎn)換為小寫,并且二個字母之間用-連接
//當(dāng)變量名稱和屬性名稱相同的時候,可以只寫一個
ButtonCount
}
});
</script>
</body>
</html>無論怎么注冊,html都比較麻煩,還需要寫到script里面去,所以需要優(yōu)化一下組件注冊
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script src="../../public/js/vue.min.js"></script>
</head>
<body>
<div id="app">
<handle-text></handle-text>
</div>
<!-- 一定要在容器外面,創(chuàng)建一個template標(biāo)簽-->
<template id="ID">
<!--這個id就是外面聲明變量template屬性的屬性值
最后把要寫的html寫到template標(biāo)簽里面
-->
<div>
<h1>我是h1</h1>
</div>
</template>
</body>
</html>
<script>
let HandleText = {
//在這個對象里面存放template屬性和一個自定義的屬性值
template: '#ID'
}
new Vue({
el:'#app',
components:{
HandleText
}
})
</script>注意:因為是組件,所以這個template標(biāo)簽里面只能有一個根標(biāo)簽
四、為什么在vue局部組件里面要有一個data函數(shù)

總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于antd中select搜索框改變搜索值的問題
這篇文章主要介紹了關(guān)于antd中select搜索框改變搜索值的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04
Vue實現(xiàn)點擊按鈕復(fù)制文本內(nèi)容的例子
今天小編就為大家分享一篇Vue實現(xiàn)點擊按鈕復(fù)制文本內(nèi)容的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11
基于Vue el-autocomplete 實現(xiàn)類似百度搜索框功能
本文通過代碼給大家介紹了Vue el-autocomplete 實現(xiàn)類似百度搜索框功能,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-10-10
vue實現(xiàn)父子組件之間的通信以及兄弟組件的通信功能示例
這篇文章主要介紹了vue實現(xiàn)父子組件之間的通信以及兄弟組件的通信功能,結(jié)合實例形式分析了vue.js組件間通信相關(guān)操作技巧,需要的朋友可以參考下2019-01-01
詳談Vue.js框架下main.js,App.vue,page/index.vue之間的區(qū)別
這篇文章主要介紹了詳談Vue.js框架下main.js,App.vue,page/index.vue之間的區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08

