欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue 組件組織結(jié)構(gòu)及組件注冊(cè)詳情

 更新時(shí)間:2021年10月27日 09:14:51   作者:Silent丿丶黑羽  
這篇文章主要介紹的是Vue 組件組織結(jié)構(gòu)及組件注冊(cè),為了能在模板中使用,這些組件必須先注冊(cè)以便 Vue 能夠識(shí)別。這里有兩種組件的注冊(cè)類型:全局注冊(cè)和局部注冊(cè)。至此,我們的組件都只是通過(guò) Vue.component 全局注冊(cè)的,文章學(xué)詳細(xì)內(nèi)容,需要的朋友可以參考一下

1、組件的組織

通常一個(gè)應(yīng)用會(huì)以一棵嵌套的組件樹(shù)的形式來(lái)組織:

例如:我們可能會(huì)有頁(yè)頭、側(cè)邊欄、內(nèi)容區(qū)等組件,每個(gè)組件又包含了其它的像導(dǎo)航鏈接、博文之類的組件。

為了能在模板中使用,這些組件必須先注冊(cè)以便 Vue 能夠識(shí)別。這里有兩種組件的注冊(cè)類型:全局注冊(cè)和局部注冊(cè)。

至此,我們的組件都只是通過(guò) Vue.component 全局注冊(cè)的:

Vue.component('my-component-name', {
  // ... options ...
})


全局注冊(cè)的組件可以用在其被注冊(cè)之后的任何 (通過(guò) new Vue) 新創(chuàng)建的 Vue 根實(shí)例,也包括其組件樹(shù)中的所有子組件的模板中。

2、組件名

在注冊(cè)一個(gè)組件的時(shí)候,我們始終需要給它一個(gè)名字。比如在全局注冊(cè)的時(shí)候我們已經(jīng)看到了:

Vue.component('my-component-name', { /* ... */ })


該組件名就是 Vue.component 的第一個(gè)參數(shù)

2.1 組件命名方式

定義組件名的方式有兩種:

  • 短橫線分隔命名:my-component-name
  • 首字母大寫(xiě)命名:MyComponentName

短橫線分隔命名

Vue.component('my-component-name', { /* ... */ })

當(dāng)使用 (短橫線分隔命名) 定義一個(gè)組件時(shí),使用時(shí)例如: <my-component-name></my-component-name>

首字母大寫(xiě)命名

Vue.component('MyComponentName', { /* ... */ })

當(dāng)使用 (首字母大寫(xiě)命名) 定義一個(gè)組件時(shí),你在引用這個(gè)自定義元素時(shí)兩種命名法都可以使用。也就是說(shuō) <my-component-name><MyComponentName> 都是可接受的。

注意:盡管如此,直接在 DOM (即非字符串的模板) 中使用時(shí)只有 短橫線分隔命名 是有效的。

3、全局注冊(cè)

全局注冊(cè)就是使用Vue.component 來(lái)創(chuàng)建組件:

Java
Vue.component('my-component-name', {
  // ... 選項(xiàng) ...
})

這些組件是全局注冊(cè)的。也就是說(shuō)它們?cè)谧?cè)之后可以用在任何新創(chuàng)建的Vue根實(shí)例 (new Vue) 的模板中。

比如:

<div id="app">
  <component-a></component-a>
  <component-b></component-b>
  <component-c></component-c>
</div>

Vue.component('component-a', { /* ... */ })
Vue.component('component-b', { /* ... */ })
Vue.component('component-c', { /* ... */ })

new Vue({ el: '#app' })

但是全局注冊(cè)實(shí)際項(xiàng)目中用的不多

4、局部注冊(cè)

全局注冊(cè)往往是不夠理想的。比如,如果你使用一個(gè)像 webpack 這樣的構(gòu)建系統(tǒng),全局注冊(cè)所有的組件意味著即便你已經(jīng)不再使用一個(gè)組件了,它仍然會(huì)被包含在你最終的構(gòu)建結(jié)果中。這造成了用戶下載的 JavaScript的無(wú)謂的增加。

在這些情況下,你可以通過(guò)一個(gè)普通的 JavaScript對(duì)象來(lái)定義組件:

let ComponentA = {
    template: `<p>hello</p>`
  }
let ComponentB = {
  template: `<p>world</p>`
}


然后在 components 選項(xiàng)中定義你想要使用的組件:

new Vue({
  el: '#app',
  components: {
    'component-a': ComponentA,
    'component-b': ComponentB
  }
})

對(duì)于 components 對(duì)象中的每個(gè) property 來(lái)說(shuō),其 property 名就是自定義元素的名字,其 property 值就是這個(gè)組件的選項(xiàng)對(duì)象。

當(dāng)然實(shí)際開(kāi)發(fā)過(guò)程中我們使用模塊系統(tǒng)注冊(cè)組件更多,這塊后面再介紹

到此這篇關(guān)于Vue 組件組織結(jié)構(gòu)及組件注冊(cè)詳情的文章就介紹到這了,更多相關(guān)Vue 組件組織結(jié)構(gòu)及組件注冊(cè)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Element PageHeader頁(yè)頭的使用方法

    Element PageHeader頁(yè)頭的使用方法

    這篇文章主要介紹了Element PageHeader頁(yè)頭的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Vue項(xiàng)目使用nginx方式部署前端

    Vue項(xiàng)目使用nginx方式部署前端

    本文給大家介紹Vue項(xiàng)目使用nginx方式部署前端,vue項(xiàng)目編譯打包在項(xiàng)目根目錄下運(yùn)行npm run build 進(jìn)行編譯打包,本文給大家介紹的非常詳細(xì),需要的朋友跟隨小編一起看看吧
    2023-10-10
  • vue在使用ECharts時(shí)的異步更新和數(shù)據(jù)加載詳解

    vue在使用ECharts時(shí)的異步更新和數(shù)據(jù)加載詳解

    這篇文章主要給大家介紹了關(guān)于vue在使用ECharts時(shí)的異步更新和數(shù)據(jù)加載的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • Vue + Webpack + Vue-loader學(xué)習(xí)教程之相關(guān)配置篇

    Vue + Webpack + Vue-loader學(xué)習(xí)教程之相關(guān)配置篇

    這篇文章主要介紹了關(guān)于Vue + Webpack + Vue-loader的相關(guān)配置篇,文中通過(guò)示例代碼介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-03-03
  • element-ui和vue表單(對(duì)話框)驗(yàn)證提示語(yǔ)(殘留)清除操作

    element-ui和vue表單(對(duì)話框)驗(yàn)證提示語(yǔ)(殘留)清除操作

    這篇文章主要介紹了element-ui和vue表單(對(duì)話框)驗(yàn)證提示語(yǔ)(殘留)清除操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • vue-cli項(xiàng)目配置多環(huán)境的詳細(xì)操作過(guò)程

    vue-cli項(xiàng)目配置多環(huán)境的詳細(xì)操作過(guò)程

    vue-cli 默認(rèn)只提供了 dev 和 prod 兩種環(huán)境。這篇文章主要介紹了vue-cli項(xiàng)目配置多環(huán)境的詳細(xì)操作過(guò)程,需要的朋友可以參考下
    2018-10-10
  • 在VUE中實(shí)現(xiàn)文件下載并判斷狀態(tài)的方法

    在VUE中實(shí)現(xiàn)文件下載并判斷狀態(tài)的方法

    今天小編就為大家分享一篇在VUE中實(shí)現(xiàn)文件下載并判斷狀態(tài)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • 解決vue 路由變化頁(yè)面數(shù)據(jù)不刷新的問(wèn)題

    解決vue 路由變化頁(yè)面數(shù)據(jù)不刷新的問(wèn)題

    下面小編就為大家分享一篇解決vue 路由變化頁(yè)面數(shù)據(jù)不刷新的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • vue中el-table實(shí)現(xiàn)自動(dòng)吸頂效果(支持fixed)

    vue中el-table實(shí)現(xiàn)自動(dòng)吸頂效果(支持fixed)

    本文主要介紹了vue中el-table實(shí)現(xiàn)自動(dòng)吸頂效果,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 如何解決vue與傳統(tǒng)jquery插件沖突

    如何解決vue與傳統(tǒng)jquery插件沖突

    本篇文章主要介紹了如何解決vue與傳統(tǒng)jquery插件沖突,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03

最新評(píng)論