React配置Less方法 和Sass方法 , webpack.config.js文件

在yarn eject 之后:

1. create-react-app 新建項目

$ create-react-app add-less && cd add-less
  1. yarn eject 暴露配置文件
$ yarn eject
$ react-scripts eject
NOTE: Create React App 2 supports TypeScript, Sass, CSS Modules and more without ejecting: https://reactjs.org/blog/2018/10/01/create-react-app-v2.html

? Are you sure you want to eject? This action is permanent. (y/N) 

y 確認(rèn)

  1. 修改 cofig/webpack.config.js
    找到
const cssRegex = /\.css$/;
const cssModuleRegex = /\.module\.css$/;

修改為

const cssRegex = /\.(css|less)$/;
const cssModuleRegex = /\.module\.(css|less)$/;

找到

           {
              test: cssRegex,
              exclude: cssModuleRegex,
              use: getStyleLoaders({
                importLoaders: 1,
                sourceMap: isEnvProduction && shouldUseSourceMap,
              }),
              // Don't consider CSS imports dead code even if the
              // containing package claims to have no side effects.
              // Remove this when webpack adds a warning or an error for this.
              // See https://github.com/webpack/webpack/issues/6571
              sideEffects: true,
            },

修改為

          {
              test: cssRegex,
              exclude: cssModuleRegex,
              use: getStyleLoaders({
                importLoaders: 2,
                sourceMap: isEnvProduction && shouldUseSourceMap,
              },
                'less-loader'
              ),
              // Don't consider CSS imports dead code even if the
              // containing package claims to have no side effects.
              // Remove this when webpack adds a warning or an error for this.
              // See https://github.com/webpack/webpack/issues/6571
              sideEffects: true,
            },

如果配置sass
直接下載

yarn add node-sass

注意:下載更改之后,要重新yarn start


另外一份配置less的文章
<meta charset="utf-8">

React 版本 16.8.4
寫這篇文章是因為個人想使用螞蟻金服的AntD UI寫個demo岔帽,中間遇到一些坑截型,網(wǎng)上找到的一些方案有點過時冀膝,所以解決問題后決定自己寫點經(jīng)驗和大家分享。
AntD是用less編寫的挤忙,雖然可以直接引入CSS樣式文件,但是為了方便修改AntD主題泛啸,我才在開發(fā)環(huán)境中添加了對less文件編譯的支持边琉。

創(chuàng)建項目
當(dāng)前最新React版本是16.8.4.
使用create-react-app腳手架工具創(chuàng)建一個名為 ant-react 的項目:

image

項目創(chuàng)建完成后可以看到項目結(jié)構(gòu)很精簡属百,沒有發(fā)現(xiàn)webpack配置文件。之后我們打開package.json文件:

image

這里大家注意看一下這里標(biāo)注了react-scripts文件是2.x版本变姨,https://reactjs.org/blog/2018/10/01/create-react-app-v2.html 此鏈接講述了react-scripts文件的一些變化族扰,主要添加對sass/scss樣式文件的默認(rèn)支持…

接下來安裝less和less-loader插件包,打開終端輸入:

cd ant-react
yarn add less less-loader

或者npm install less less-loader

配置less-loader
配置less-loader需要暴露webpack配置文件定欧,這就要使用create-react-app腳手架工具提供的 eject 命令(見上圖)渔呵,運行命令前需要將項目commit一下,否則項目無法eject成功忧额,打開終端運行 yarn eject命令(或者npm run eject)厘肮,eject命令是一次性命令愧口,運行后無法恢復(fù)睦番,

yarn eject

命令運行結(jié)束之后會發(fā)現(xiàn)package.json 文件中多了很多內(nèi)容,項目結(jié)構(gòu)中多了一個config文件夾

image

打開config文件夾耍属,找到webpack.config.js文件打開托嚣,主要修改里面的三處地方:

修改style files regexes(樣式文件正則),找到 注釋style files regexes厚骗,在這部分最后添加如下兩行代碼:
const lessRegex = /.less[圖片上傳失敗...(image-b21964-1576223431381)]

/;

image
  1. 修改 getStyleLoaders 函數(shù)示启,添加代碼(如圖)

    image
  2. 最后一處修改大約在429行,模仿代碼中提供的sassRegex代碼领舰,添加如下代碼夫嗓,如下圖

    image

webpack.config.js文件修改完成。

試一下效果冲秽,將index.css文件重命名為index.less,再把index.js文件中引入的index.css文件修改為index.less文件舍咖,保存代碼,命令行輸入yarn start 命令(或npm start)

作者:piziyang12138
鏈接:http://www.reibang.com/p/bfa308164df4

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末锉桑,一起剝皮案震驚了整個濱河市排霉,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌民轴,老刑警劉巖攻柠,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異后裸,居然都是意外死亡瑰钮,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進店門微驶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來浪谴,“玉大人,你說我怎么就攤上這事〗系辏” “怎么了士八?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長梁呈。 經(jīng)常有香客問我婚度,道長,這世上最難降的妖魔是什么官卡? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任蝗茁,我火速辦了婚禮,結(jié)果婚禮上寻咒,老公的妹妹穿的比我還像新娘哮翘。我一直安慰自己,他們只是感情好毛秘,可當(dāng)我...
    茶點故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布饭寺。 她就那樣靜靜地躺著,像睡著了一般叫挟。 火紅的嫁衣襯著肌膚如雪艰匙。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天抹恳,我揣著相機與錄音员凝,去河邊找鬼。 笑死奋献,一個胖子當(dāng)著我的面吹牛健霹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播瓶蚂,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼糖埋,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了扬跋?” 一聲冷哼從身側(cè)響起阶捆,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎钦听,沒想到半個月后洒试,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡朴上,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年垒棋,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片痪宰。...
    茶點故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡叼架,死狀恐怖畔裕,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情乖订,我是刑警寧澤扮饶,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站乍构,受9級特大地震影響甜无,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜哥遮,卻給世界環(huán)境...
    茶點故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一岂丘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧眠饮,春花似錦奥帘、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至返咱,卻和暖如春钥庇,著一層夾襖步出監(jiān)牢的瞬間牍鞠,已是汗流浹背咖摹。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留难述,地道東北人萤晴。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像胁后,于是被迫代替她去往敵國和親店读。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,507評論 2 359