css module到底解決了一個什么問題


 

  css module解決了什么問題?

  簡單來說,讓你通過import引入css到項目后,只作用於當前模塊,不作用於全局,避免造成樣式的全局污染

 

  2種寫法

  全局寫法:import './index.scss';不推薦該寫法,耦合強,容易覆蓋其它模塊的樣式,不好維護)

  局部寫法:import style from './index.scss';(推薦該寫法,把模塊之間的樣式完美解耦,讓其只作用於當前模塊,互不影響,利於維護)

 

 場景重現

 在A模塊和B模塊中分別以全局和局部的方式引入一個css樣式文件,A模塊樣式中給某元素添加字體顏色為紅色color:red;

 B模塊樣式中給元素添加字體顏色為藍色color:blue,結果不僅沒有生效,字體顏色還變成了紅色,

 代碼和引入方式都沒有錯,最后發現是隔壁A模塊的樣式覆蓋了B模塊的樣式

 

 如何配置(webpack.config.js中配置modules: true)

 

 

 如果在一個組件(頁面)中不需要像上面一樣引入css文件,並且想讓樣式只作用於當前,給style加上scoped屬性即可

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM