選型
項目打算用css預(yù)處理(預(yù)處理的嵌套語法實在不能拒絕),而css的預(yù)處理sass、less和stylus這三者中,考慮到優(yōu)先選擇主流的,自然而然就偏向選擇sass/scss,但是還要搭建ruby環(huán)境編譯sass感覺太麻煩了,就網(wǎng)上找了下資料,果然,npm提供了編譯好的node-sass,無需再安裝ruby了,下好即用。
但是,又出現(xiàn)了個新問題,node-sass編譯好的二進制庫是從github下載的,大概有2.xMB大,由于github的不穩(wěn)定性,導(dǎo)致這個安裝會經(jīng)??ㄗ。W(wǎng)上一堆人吐槽這個問題。當(dāng)然,翻墻可以解決這個問題,但是從團隊的角度來說,這不是個好方案。
然后,淘寶的cnpm給我們帶來了解決方案,它也提供了那個二進制文件,接下來就是如何配置來讓npm從淘寶源下載了。
解決方案
網(wǎng)上的解決思路要么是設(shè)置全局用戶的環(huán)境變量,要么是用install命令是帶上配置,這些都覺得不是太好,我們需要的是,一個新環(huán)境的搭建,只需要從代碼庫下載回來項目之后,一個npm install就搞定了,不再需要其他的額外設(shè)置。
其實方案也簡單,就是使用npm的項目級配置文件,在我們的項目根目錄下,新建一個.npmrc文件,然后里面的內(nèi)容為
# per-project config file
SASS_BINARY_SITE = https://npm.taobao.org/mirrors/node-sass/
接著,在package.json里加上node-sass的依賴。
好了,現(xiàn)在再來npm install,就可以完美的從淘寶源安裝好這個node-sass了