'node-sass'모듈을 찾을 수 없습니다


185

구성 : macOS High Sierra, 버전 10.13.2, 노드 : v8.1.2 npm : 5.0.3 angularjs 프로젝트에서 npm start를 실행하면 다음 오류가 발생합니다.

ERROR in Cannot find module 'node-sass'

이 후 나는 실행 :

npm i node-sass

이제이 오류가 발생합니다.

gyp: No Xcode or CLT version detected!
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1

npm이 node-sass를 설치하지 않는 이유는 무엇입니까? node-sass를 어떻게 설치합니까?


30
실행npm install --save-dev node-sass
Ashok R

답변:


368

해결책은 다음과 같습니다.

sudo npm install --save-dev  --unsafe-perm node-sass

즐겨!


21
이것은 효과가 있었지만 누군가 왜 이것이 효과가 있고 단순 npm install node-sass하지 않은지 에 대한 답변을 추가 할 수 있다면 유익 할 것입니다.
Michael Potter

6
@AlexOnozor 어떻게 작동합니까?
Bahman. A

13
개발 의존성 에 node-sass를 설치하는 데 필요한 모든 것npm install --save-dev node-sass
Subhash Diwakar

3
이것은 나를 위해 일했습니다. 노드 12를 설치할 때 (앵귤러 8에서 새 앵귤러 프로젝트를 시작했을 때)이 문제가 발생하기 시작했습니다. 내 각도 6 응용 프로그램은 더 이상 node-sass에 대한 오류를 빌드하고 던지지 않습니다. 모든 고정 :)
punkologist

10
--save-dev는 앱이 로컬 node_modules에서 모듈을 찾을 수 있도록 사용됩니다. --save-dev는 package.json의 devDependencies에 패키지를 추가합니다. --unsafe--perm은 설치 스크립트를 루트로 실행하는 데 사용됩니다. sudo를 피하려면 대신 nvm을 사용하십시오. -안전하지 않음-sudo가 이미 언급되었으므로 perm은 실제로 필요하지 않습니다. 따라서이 명령은 기본적으로 스크립트를 에어 타이트하여 어떤 비용 으로든 노드 샐을 설치합니다.
Rahul Sharma

92
  1. 이 오류는 node-sass가 없습니다 ...이 문제를 해결하기 위해 다음 명령을 실행하려는 것입니다.

npm install node-sass


36
devDependencies로 추가하십시오 npm install --save-dev node-sass.
Ashok R

5
도움이되지 않습니다. 이미 수십 번 (노드가 쉽지는 않았지만) node-sass를 설치했지만 여전히 실패합니다. 노드 s은 분명히 문제입니다.
mcv

2
@AshokR devDependencies가 문제를 해결함에 따라 정확히 추가하는 이유에 대해 자세히 설명해 주시겠습니까? 제품에 배포 할 때 어떻게 실패하지 않습니까?
Amogh Natu 2016

19

운영:

npm rebuild node-sass --force              

잘 작동합니다.


2
슬프게도 잘 작동하지 않습니다. 나에게 (창문에서) 문제는 남아 있습니다.
mcv

14

node-sass github 페이지에 따르면 지원되는 node.js 버전은 릴리스마다 다릅니다.

https://github.com/sass/node-sass

여기에 이미지 설명을 입력하십시오

예 : 실행중인 노드의 버전을 확인하십시오.

node -v
-> v12.0.0

node-sass v4.12 +가 필요합니다. 그래서 당신은 할 수 있습니다

npm install node-sass@4.12.0

또는 4.12.0이 최신 인 경우

npm install node-sass@latest

( npm install node-sass많은 경우 최신 버전을 설치하지만 package.json의 종속성이 ^ 3.0.0, ~ 4.11.0과 같이 작성된 경우 항상 최신 버전 (이 예에서는 4.12.0)을 설치하지는 않습니다.) 차이점은 무엇입니까? package.json에서 물결표 (~)와 캐럿 (^) 사이?

마지막으로 sudo를 npm과 함께 사용하는 것은 좋지 않습니다. 이 기사를 참조하십시오. https://medium.com/@ExplosionPills/dont-use-sudo-with-npm-still-66e609f5f92


이 솔루션은 나를 위해 일했습니다 ... 나는 오래된 2010 맥북, osx 10.12를 사용하고 있었고 여기에 설명 된대로 노드-sass 버전을 일치 시켰습니다
Theuns Alberts

"npm install node-sass@4.12.0"-내 문제가 해결되었습니다-감사합니다
gavgrif

13

그런 npm uninstall node-sass다음 npm i node-sass나를 위해 일하지 않았습니다.

나를 위해 일한 해결책은 npm install --save-dev node-sass입니다.

행복한 코딩 ..


1
감사합니다 @ShortlyFD :) :) .. 답변을 업데이트했습니다.
Bandham Manikanta


4

node-sass 가 설치되지 않고 있으며 여러 가지 이유 중 하나 일 수 있습니다.

설치하지 않았습니다

npm install node-sass --save-dev

권한 오류가 있습니다

sudo npm install --save-dev  --unsafe-perm node-sass

메모리를 만들려고했기 때문에 (플랫폼의 c 코드로 빌드) 메모리 문제가 발생했습니다. 이는 일부 플랫폼 및 노드 버전에 적용됩니다

node --max_old_space_size=8000 $(which npm) install node-sass --save-dev

노드 및 npm 버전이 호환되지 않아 빌드 프로세스에서 오류가 발생했을 가능성이 높습니다.

이 경우 n 또는 nvm을 사용하여 새 환경과 원래 환경에서 동일한 버전을 사용했는지 확인하십시오. 일반적으로 환경이 다른 환경에서 다른 버전을 사용하기 때문입니다.


4

이것이 나를 위해 일한 것입니다. 먼저 node-sass를 제거합니다. 그런 다음 다시 설치하십시오.

npm 제거 node-sass
npm install --save-dev node-sass


3

최신 버전의 노드 (12.7.0)를 사용했기 때문에 실패했습니다. 다음으로 최신 버전을 명시 적으로 설치해야했습니다 node-sass.

npm install node-sass@4.12.0


2

보유한 네트워크로 인해 npm 종속성을 다운로드하는 데 문제가 있습니다. 개방형 네트워크에서 npm 종속성을 다운로드하십시오. 아무런 문제가 없습니다. 나는 또한이 비슷한 문제에 직면하고 마침내 해결되었습니다.

아래 명령을 사용하십시오 : npm install (모든 depedencies를 다운로드 할 것입니다) npm은 각도 응용 프로그램을 시작합니다.


@TinySkillz 나는 그가 프록시없는 네트워크를 언급하고 있다고 생각합니다
Akhil S Kamath

2

npm install node-sass 누락 된 sass npm 종속성 모듈이 존재하지 않거나 이전 충돌 버전을 덮어 쓰므로 대부분의 경우 작업을 수행합니다.

Mac 사용자의 경우 sudo위 명령 앞에서 사용하십시오.

Windows 시스템 npm rebuild node-sass --force에서는 "npm이 sass 노드 모듈을 강제로 다시 빌드하도록 강제하십시오"라는 말 때문에 일부 사용자에게는 작동하지 않을 수 있습니다. 해당 모듈이 없기 때문에 작동하지 않습니다.

npm install초기 설치 를 수행 할 때마다 sass 모듈이 설치되지 않았으므로이 문제가 발생합니다.


2

로컬 컴퓨터에서 노드 버전을 확인했습니다 v10.11.0.

그런 다음 오류가 발생한 개발 시스템을 확인했을 때 노드 버전 V.10.8.0이었습니다.

v10.11.0개발 시스템에서 노드를 로 업그레이드 하면 문제가 해결되었습니다.

도움이 되었기를 바랍니다.


1
이것은 내 경우에 효과가 있었다. 감사.
Adesh Kumar

2

내 경우에는 또한 수행해야했습니다.

npm install sass-loader

문제를 해결하려면


2

이 명령으로 node-sass를 설치하지 않고이 문제를 해결했습니다.

npm install node-sass@4.12.0 --no-save --unsafe-perm


1

당신이 실행하는 경우

npm install node-sass

그리고 여전히 작동하지 않습니다 폴더에 대한 권한을 변경하는 것을 기억하십시오


1

경우 중 하나는 설치 후 프로세스가 실패하는 것입니다. node-sass가 설치된 직후, 설치 후 스크립트가 실행됩니다. 해당 프로세스에는 Python 및 C ++ 빌더가 필요합니다. 'gyp : Xcode 또는 CLT 버전이 감지되지 않았습니다!' C ++ 빌더를 찾을 수 없기 때문일 수 있습니다. 따라서 파이썬과 C ++ 빌더를 설치 한 다음 npm에서 찾을 수 있도록 디렉토리를 환경 변수에 넣으십시오. (나는 Windows에서 온다)


1

Microsoft Visual Studio Code의 통합 git 터미널을 사용하는 동안이 오류가 발생했습니다. 이상한 이유로 VS 코드에서 'node-sass'를 설치할 수 없었습니다. 그런 다음 'git Bash'(git와 함께 설치됨)를 사용하고 다음 명령을 실행 npm install node-sass 했습니다. 왜 & 어떻게 작동하는지 모르겠습니다. 누구든지 설명이 있으면 알려주십시오.


관리자
권한

1

프로젝트를 실행하려고 할 때 비슷한 문제가 발생했습니다. 먼저 현재 버전을 제거했습니다.

npm uninstall node-sass

그런 다음 최신 버전으로 다시 설치했습니다.

npm install node-sass

1

npm install --save-dev --unsafe-perm node-sass

이것은 마술을 할 것입니다, sudo와 함께 사용할 수 있습니다


1

내 문제는 웹 필터로 노드패키지 를 다운로드 할 수 없다는 것입니다 명령을 실행할 때

npm i

Windows 빌드 도구 설치 후

npm i -g windows-build-tools

그것은 node-sass자체적으로 빌드 되었으며 이제는 사용할 수 있습니다.

추신 : 전에 Python 2.7.17을 설치했지만 그게 도움이되지 않았다고 생각합니다.


0

나는 또한이 오류에 직면 해있다. 위의 방법 중 어느 것도 나를 위해 작동하지 않습니다. 그것이 나를 위해 일 한대로 이것을 따르십시오.

npm을 통해 Ubuntu 16에 node-sass를 설치하려면 :-

npm 5.2.0 버전으로 설치할 수 있습니다

nvm을 사용하는 경우 :-

nvm 설치 8.2.1
nvm 사용 8.2.1
npm 설치 노드-엉덩이

npm을 별도로 사용하는 경우 npm 버전을 5.2.0으로 업그레이드하거나 다운 그레이드하십시오.

npm 설치 노드-엉덩이

0

에서 생성 한 로그를 확인해야합니다 npm install.

나는 같은 문제에 직면했으며 경로에서 python2를 찾을 수 없다는 오류를 발견했습니다 (환경 변수).

파이썬을 설치 한 후 모든 것이 잘 작동했습니다.




0

Angular에 종속성을 설치할 때 동일한 오류가 발생했습니다 . 앞서 언급 한 기술을 시도했지만 package-lock.jsonNode v11을 실행할 때 이전에 생성 된 것을 삭제할 때까지는 아무것도 작동하지 않았습니다 .

이제 Node v12를 사용하고 있으므로 이것이 해결되었습니다.

package-lock.json삭제하고 파일 을 삭제 한 다음 종속성을 설치 하면 반복합니다 .



0

package.json의 dev 섹션에 node-sass를 설치해야합니다

npm install --unsafe-perm node-sass --save-dev  

0

버전에 문제가있는 것 같습니다 "node-sass": "4.5.3". 최신 버전으로 업데이트하십시오. ^ "node-sass": "^4.5.3"최신 버전을 추가 할 수있는 것과 같은


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.