2017-02-28 103 views
2

我試圖設置節點sass,在instructions on CSS-Tricks之後。 Node和npm安裝正確,節點sass安裝也起作用。當我去跑node-sass --output-style compressed -o dist/css src/scss,不過,我得到一個錯誤信息,說明節點sass不被命令行識別

「節點薩斯」不被識別爲一個內部或外部命令,可操作 程序或批處理文件。

我已經做了一點點的谷歌搜索和搜索Stack Overflow directly。我的問題不是關於「節點」不被識別爲命令。我知道節點正在工作,因爲我可以運行node -vnpm -v,並且在運行npm install --save-dev node-sass(在node_modules中有一個文件夾)之後成功安裝了node-sass,並且命令行中沒有出現錯誤。

其他信息:我正在運行Windows 10,並在嘗試使用node-sass之前乾淨地安裝了節點和npm。

編輯:我卸載,並與-g感謝@ Bhavik的建議重新安裝,而它現在的工作

+0

你需要做的'NPM安裝-g節點sass'在全球範圍內安裝。 – Bhavik

+0

所以我不能從命令行運行而沒有全局安裝它? –

+0

它應該在要使用的PATH變量中可用。其他方式可以在'package.json'中找到'scripts',你可以在其中創建腳本:{「node-sass」:「node-sass --output-style compressed -o dist/css src/scss 「'然後使用'npm run node-sass'運行它 – Bhavik

回答

11

您需要在全球範圍內安裝

npm install -g node-sass 

或者在package.json

"devDependencies": { 
    "node-sass": "4.5.0" 
}, 
"scripts" : { 
    "node-sass": "node-sass --output-style compressed -o dist/css src/scss" 
} 
添加它

然後做
1. npm i,在這種情況下它將類似於npm install --save-dev node-sass
2. npm run node-sass

參考:以下npm scriptsnpm-run-scripts

+0

當我直接從命令行運行'node-sass --output-style compressed -o dist/css src/scss'時,它作品,但如果我將其作爲腳本運行,則不適用。這是全球安裝的結果嗎?如果我想在腳本中使用node-sass,它是否需要本地安裝? –

+2

不知道爲什麼會發生這種情況,npm-run-script適用於在全局和本地安裝的軟件包。 ***除了shell的預先存在的PATH之外,npm run將node_modules/.bin添加到提供給腳本的PATH。***來自[npm-run-scripts](https://docs.npmjs.com/cli/run-script) – Bhavik

+0

紗線:'yarn global add node-sass' –

0

解決問題

yarn global add node-sass-chokidar