在create-react-app中使用sass的方法示例
Sass(英文全稱:Syntactically Awesome Stylesheets)是一個(gè)最初由Hampton Catlin設(shè)計(jì)并由Natalie Weizenbaum開發(fā)的層疊樣式表語(yǔ)言。Sass是一個(gè)將腳本解析成CSS的腳本語(yǔ)言,即SassScript。Sass包括兩套語(yǔ)法。最開始的語(yǔ)法叫做“縮進(jìn)語(yǔ)法”,與Haml類似,使用縮進(jìn)來(lái)區(qū)分代碼塊,并且用回車將不同規(guī)則分隔開。而較新的語(yǔ)法叫做“SCSS”,使用和CSS一樣的塊語(yǔ)法,即使用大括號(hào)將不同的規(guī)則分開,使用分號(hào)將具體的樣式分開。通常情況下,這兩套語(yǔ)法通過(guò).sass和.scss兩個(gè)文件擴(kuò)展名區(qū)分開。相信每個(gè)前端開發(fā)者都對(duì)這種css預(yù)處理器有所耳聞。
不管你是剛使用Reactjs或者是Reactjs的老司機(jī),你們一定都聽(tīng)說(shuō)過(guò)create-react-app這個(gè)腳手架,而從create-react-app的官方文檔中,我們可以看到他們暫時(shí)還不支持直接導(dǎo)入LESS或者Sass。但是通過(guò)一些配置,我們還是可以從官方腳手架中使用sass/scss/less的。
1、安裝node-sass-chokidar到依賴
npm install --save node-sass-chokidar
2、安裝node-sass
npm install node-sass
3、在項(xiàng)目的package.json中,將以下行添加到scripts中:
"build-css": "node-sass-chokidar src/ -o src/", "watch-css": "npm run build-css && node-sass-chokidar src/ -o src/ --watch --recursive",
4、使用
創(chuàng)建xx.scss文件,或者將初始化項(xiàng)目中的src/App.css重命名為src/App.scss,在終端運(yùn)行
npm run watch-css
watch-css將在src子目錄中找到每個(gè)Sass文件,并在其旁邊創(chuàng)建一個(gè)相應(yīng)的CSS文件
5、同時(shí)編譯sass和運(yùn)行項(xiàng)目
(1)可以打開兩個(gè)終端,一個(gè)終端執(zhí)行npm start運(yùn)行項(xiàng)目,另一個(gè)終端執(zhí)行npm run watch-css進(jìn)行同步編譯
(2)使用npm-run-all工具,執(zhí)行npm install npm-run-all --save-dev安裝,在在項(xiàng)目的package.json中,將以下行添加到scripts中:
"run-double": "npm-run-all -p watch-css start"
在終端執(zhí)行npm run run-double,可同時(shí)運(yùn)行項(xiàng)目和編譯sass
*注:"run-double"這個(gè)名稱可改為自己喜歡的名稱
6、推薦
更改create-react-app的webpack配置,一般使用react-app-rewired來(lái)處理
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
React在組件中如何監(jiān)聽(tīng)redux中state狀態(tài)的改變
這篇文章主要介紹了React在組件中如何監(jiān)聽(tīng)redux中state狀態(tài)的改變,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
React-Native左右聯(lián)動(dòng)List的示例代碼
本篇文章主要介紹了React-Native左右聯(lián)動(dòng)List的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
詳解如何在React中監(jiān)聽(tīng)鼠標(biāo)事件
React可以通過(guò)使用React事件系統(tǒng)來(lái)監(jiān)聽(tīng)鼠標(biāo)事件,您可以在React組件中通過(guò)使用特定的事件處理函數(shù)來(lái)注冊(cè)和處理鼠標(biāo)事件,本文小編講給大家詳細(xì)介紹一下如何在React中監(jiān)聽(tīng)鼠標(biāo)事件,需要的朋友可以參考下2023-09-09
jenkins分環(huán)境部署vue/react項(xiàng)目的方法步驟
這篇文章主要介紹了jenkins分環(huán)境部署vue/react項(xiàng)目的方法,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02
React?Hook中的useEffecfa函數(shù)的使用小結(jié)
React 會(huì)在組件更新和卸載的時(shí)候執(zhí)行清除操作, 將上一次的監(jiān)聽(tīng)取消掉, 只留下當(dāng)前的監(jiān)聽(tīng),這篇文章主要介紹了React?Hook?useEffecfa函數(shù)的使用細(xì)節(jié)詳解,需要的朋友可以參考下2022-11-11
react-three/postprocessing庫(kù)的參數(shù)中文含義使用解析
這篇文章主要介紹了react-three/postprocessing庫(kù)的參數(shù)中文含義使用總結(jié),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05

