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

Vue組件間的樣式?jīng)_突污染問題詳解

 更新時間:2022年11月30日 11:30:33   作者:未及545  
默認情況下,寫在.vue組件中的樣式會全局生效,因此很容易造成多個組件之間的樣式?jīng)_突問題。導致組件之間樣式?jīng)_突的根本原因,我們接下來探究一下

默認情況下,寫在.vue組件中的樣式會全局生效,因此很容易造成多個組件之間的樣式?jīng)_突問題。

導致組件之間樣式?jīng)_突的根本原因是:

  • 單頁面應用程序中,所有組件的dom結構,都是基于唯一的index.html頁面進行呈現(xiàn)的。
  • 每個組件中的樣式,都會影響整個index.html頁面中的dom元素。

給left.vue文件中的p標簽添加一個字體樣式

<template>
  <div>
    <p >left組件</p>
    <MyCount :num="4"></MyCount>
  </div>
</template>
<script>
import MyCount from "@/components/count.vue"
export default {
components:{
    MyCount
}
}
</script>
<style>
p{color:red}
</style>

此時發(fā)現(xiàn)頁面right.vue文件也受影響變成紅色了

<template>
  <div>
    <!-- 給單個頁面添加固定的自定義data-v-001屬性,如此就能解決沖突問題
    一個頁面最好用同一個,防止混亂
    -->
    <!-- <p data-v-001>left組件</p> -->
    <p >left組件</p>
    <MyCount :num="4"></MyCount>
  </div>
</template>
<script>
import MyCount from "@/components/count.vue"
export default {
components:{
    MyCount
}
}
</script>
<!-- 只不過上面的方法一個一個添加太過麻煩
直接在style標簽上添加scoped也能解決組件樣式?jīng)_突,
因為他會自動幫我們生成data-v-number
-->
<style scoped>
p{color:red}
</style>

/deep/的使用

<template>
  <div>
    <p >left組件</p>
    <MyCount :num="4"></MyCount>
   
  </div>
</template>
<script>
import MyCount from "@/components/count.vue"
export default {
components:{
    MyCount
}
}
</script>
<style scoped>
p{color:red}
/* 給count組件加樣式,left和right文件都加,但是發(fā)現(xiàn)效果是受right的樣式影響
,這是因為right沒有加scoped,而此時我們想要給left文件加樣式呢?
標簽前面加個/deep/就行了,加上deep是[data--38a98c97] h5這樣顯示的,不加是h5[data--38a98c97] 
這樣顯示的
*/
/* 在父組件中修改子組件樣式,可用deep */
 /deep/ h5{
    color:orange;
}
</style>

當使用第三方組件庫的時候,如果要修改第三方組件默認樣式的時候,也需要用到/deep/

到此這篇關于Vue組件間的樣式?jīng)_突污染問題詳解的文章就介紹到這了,更多相關Vue組件樣式?jīng)_突內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Vue3使用v-if指令進行條件渲染的實例代碼

    Vue3使用v-if指令進行條件渲染的實例代碼

    條件渲染是根據(jù)條件的真假來有條件地渲染元素,在Vue.js 3.x中,常見的條件渲染包括使用v-if指令和v-show指令,本文講解使用v-if指令進行條件渲染,需要的朋友可以參考下
    2024-03-03
  • 面試題:react和vue的區(qū)別分析

    面試題:react和vue的區(qū)別分析

    這篇文章主要介紹了react和vue的區(qū)別分析,在面試中經(jīng)常會遇到,小編通過實例文字相結合的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • vue3手動刪除keepAlive緩存的方法

    vue3手動刪除keepAlive緩存的方法

    當我們未設置keepAlive的最大緩存數(shù)時,當緩存組件太多,會導致內(nèi)存溢出,本文給大家介紹了vue3手動刪除keepAlive緩存的方法,文中通過代碼示例介紹的非常詳細,需要的朋友可以參考下
    2024-03-03
  • Vuex中的getter和mutation的區(qū)別詳解

    Vuex中的getter和mutation的區(qū)別詳解

    在現(xiàn)代前端開發(fā)中,狀態(tài)管理是一個不可忽視的話題,而Vuex作為Vue.js的官方狀態(tài)管理庫,在大型應用中扮演著至關重要的角色,當我們使用Vuex進行狀態(tài)管理時,getter和mutation是兩個重要的概念,在本文中,我們將詳細探討getter和mutation的區(qū)別,需要的朋友可以參考下
    2024-12-12
  • vue bus全局事件中心簡單Demo詳解

    vue bus全局事件中心簡單Demo詳解

    ue-bus 提供了一個全局事件中心,并將其注入每一個組件,你可以像使用內(nèi)置事件流一樣方便的使用全局事件。這篇文章給大家介紹了vue bus全局事件中心簡單Demo,需要的朋友參考下吧
    2018-02-02
  • vue中三元表達式方法例子

    vue中三元表達式方法例子

    這篇文章主要給大家介紹了關于vue中三元表達式的相關資料,眾所周知三元表達式用來根據(jù)參數(shù)的不同執(zhí)行不同的代碼是很方便的,需要的朋友可以參考下
    2023-09-09
  • tdesign vue初始化組件源碼解析

    tdesign vue初始化組件源碼解析

    這篇文章主要為大家介紹了tdesign vue初始化組件源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • vue中keep-alive組件實現(xiàn)多級嵌套路由的緩存

    vue中keep-alive組件實現(xiàn)多級嵌套路由的緩存

    本文主要介紹了vue中keep-alive組件實現(xiàn)多級嵌套路由的緩存,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue寫一個組件

    vue寫一個組件

    這篇文章主要介紹了vue組寫一個組件,需要的朋友可以參考下
    2018-04-04
  • Vue2.5通過json文件讀取數(shù)據(jù)的方法

    Vue2.5通過json文件讀取數(shù)據(jù)的方法

    本文通過實例代碼給大家詳細介紹了Vue2.5通過json文件讀取數(shù)據(jù)的方法,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2018-02-02

最新評論

贞丰县| 霍州市| 宜昌市| 满洲里市| 抚顺县| 木里| 区。| 永泰县| 于田县| 泉州市| 阿克| 永顺县| 宜昌市| 昌图县| 罗平县| 吉水县| 忻州市| 钟祥市| 广汉市| 长子县| 政和县| 云龙县| 横峰县| 罗甸县| 南京市| 伊宁县| 大田县| 双流县| 唐海县| 阳高县| 五寨县| 昔阳县| 长兴县| 凤冈县| 饶阳县| 道真| 宕昌县| 富川| 八宿县| 凤翔县| 子长县|