最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue scoped及deep使用方法解析

 更新時(shí)間:2020年08月01日 10:01:58   作者:一只小菜鳥呀!  
這篇文章主要介紹了Vue scoped及deep使用方法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

眾所周知,在組件中給style 標(biāo)簽添加屬性 scoped 屬性可以避免組件內(nèi)樣式對(duì)外界造成污染,scoped使得組件內(nèi)的樣式變成局域樣式,只作用于當(dāng)前組件。

原理如下-------

在編譯組件的時(shí)候,如果當(dāng)前組件內(nèi)style標(biāo)簽上有scoped屬性,那么會(huì)在當(dāng)前所有標(biāo)簽上添加一個(gè)【data-v-hash】屬性,而當(dāng)前樣式表內(nèi)的所有末尾選擇器后面也會(huì)加上該屬性,那么就使得當(dāng)前組件內(nèi)的樣式只會(huì)作用于當(dāng)前組件內(nèi)的元素。值得注意的是,當(dāng)父組件,子組件同時(shí)使用scoped屬性時(shí),子組件最外層的標(biāo)簽既會(huì)被加上當(dāng)前組件的hash值,又會(huì)加上父級(jí)組件的hash值,像這樣

//子組件最外層標(biāo)簽
<div data-v-b45036b2 data-v-384b136e ></div>

但是有個(gè)問題------

在我們用scoped的時(shí)候回發(fā)現(xiàn)一個(gè)問題,就是我們?cè)诋?dāng)前組件內(nèi)使用的scoped,但是我想在當(dāng)前組件內(nèi)改變子組件的樣式(非最外層標(biāo)簽),的時(shí)候會(huì)發(fā)現(xiàn)不好使。

<style scoped>
.father-div .child-div{color:red;}
</style>

因?yàn)榈搅藶g覽器上會(huì)解析成

<div data-v-384b136e ></div> 

不好使的原因是應(yīng)為父組件內(nèi)樣式內(nèi)解析的是父組件的hash值,而子組件內(nèi)標(biāo)簽上添加的是子組件的hash值,對(duì)應(yīng)不上當(dāng)然沒效果,那怎么解決呢?

使用deep------

當(dāng)遇到這種困擾的時(shí)候我們可以另寫一個(gè)style標(biāo)簽,然后不加scoped屬性,來蓋子組件的樣式,當(dāng)前這么寫是可以的,但是不太優(yōu)雅,這時(shí)我們可以用到/deep/屬性,

.father-div /deep/ .child-div{color:red;}

當(dāng)遇到"/deep/"的時(shí)候會(huì)將"/deep/"的位置替換成組件的hash值,解析成

.father-div[data-v-b45036b2] .child-div{color:red;}

這樣只需要注意css的權(quán)重就可以覆蓋子組件內(nèi)的樣式了,

注意:子組件內(nèi)最外層的樣式由于是帶了父子組件的兩個(gè)hash值,所以是會(huì)被兩頭控制的,不需要/deep/就可以在父組件內(nèi)覆蓋樣式

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue+elementUI實(shí)現(xiàn)點(diǎn)擊按鈕互斥效果

    vue+elementUI實(shí)現(xiàn)點(diǎn)擊按鈕互斥效果

    這篇文章主要為大家詳細(xì)介紹了vue+elementUI實(shí)現(xiàn)點(diǎn)擊按鈕互斥效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Vue+jsPlumb實(shí)現(xiàn)連線效果(支持滑動(dòng)連線和點(diǎn)擊連線)

    Vue+jsPlumb實(shí)現(xiàn)連線效果(支持滑動(dòng)連線和點(diǎn)擊連線)

    jsPlumb 是一個(gè)比較強(qiáng)大的繪圖組件,它提供了一種方法,主要用于連接網(wǎng)頁上的元素。本文將利用jsPlumb實(shí)現(xiàn)連線效果,同時(shí)支持滑動(dòng)連線和點(diǎn)擊連線,感興趣的可以了解一下
    2023-01-01
  • Vue3項(xiàng)目中引入html頁面的方法舉例

    Vue3項(xiàng)目中引入html頁面的方法舉例

    這篇文章主要給大家介紹了關(guān)于Vue3項(xiàng)目中引入html頁面的相關(guān)資料,Vue3是一個(gè)JavaScript框架,通常我們使用它來構(gòu)建單頁應(yīng)用程序(SPA),如果你想在HTML頁面中使用Vue3,可以參考這篇文章,需要的朋友可以參考下
    2023-09-09
  • 基于Vue實(shí)例生命周期(全面解析)

    基于Vue實(shí)例生命周期(全面解析)

    下面小編就為大家?guī)硪黄赩ue實(shí)例生命周期(全面解析)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-08-08
  • Vue?h函數(shù)的使用詳解

    Vue?h函數(shù)的使用詳解

    本文主要介紹了Vue?h函數(shù)的使用詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Vue.js學(xué)習(xí)之過濾器詳解

    Vue.js學(xué)習(xí)之過濾器詳解

    過濾器,本質(zhì)上就是一個(gè)函數(shù)。其作用在于用戶輸入數(shù)據(jù)后,它能夠進(jìn)行處理,并返回一個(gè)數(shù)據(jù)結(jié)果。下面這篇文章主要給大家介紹了Vue.js中過濾器的相關(guān)資料,需要的朋友可以參考借鑒,一起來看看吧。
    2017-01-01
  • Vue路由對(duì)象屬性 .meta $route.matched詳解

    Vue路由對(duì)象屬性 .meta $route.matched詳解

    今天小編就為大家分享一篇Vue路由對(duì)象屬性 .meta $route.matched詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • VUE el-tree組件左邊勾選,右邊清除交互問題

    VUE el-tree組件左邊勾選,右邊清除交互問題

    這篇文章主要介紹了VUE el-tree組件左邊勾選,右邊清除交互問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。
    2023-04-04
  • django+vue實(shí)現(xiàn)注冊(cè)登錄的示例代碼

    django+vue實(shí)現(xiàn)注冊(cè)登錄的示例代碼

    這篇文章主要介紹了django+vue實(shí)現(xiàn)注冊(cè)登錄的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • VueJs打包之后遇到的坑及解決

    VueJs打包之后遇到的坑及解決

    這篇文章主要介紹了VueJs打包之后遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05

最新評(píng)論

德昌县| 二连浩特市| 仁化县| 永福县| 木里| 邵武市| 板桥市| 老河口市| 新建县| 苏尼特右旗| 仙桃市| 分宜县| 岳普湖县| 托克逊县| 同江市| 大洼县| 宝清县| 游戏| 大石桥市| 朝阳县| 泸西县| 神木县| 乌拉特中旗| 宁蒗| 灵寿县| 敦煌市| 亚东县| 峨边| 云和县| 石渠县| 苏尼特右旗| 黑龙江省| 宕昌县| 息烽县| 博湖县| 噶尔县| 客服| 晋中市| 庐江县| 孟州市| 双柏县|