Node Sass가 현재 환경에 대한 바인딩을 찾을 수 없습니다.
-
Node Sass가 현재 환경에 대한 바인딩을 찾을 수 없습니다
는 무엇입니까? -
Node Sass가 현재 환경에 대한 바인딩을 찾을 수 없습니다
의 원인 -
Node Sass가 현재 환경에 대한 바인딩을 찾을 수 없습니다
에 대한 솔루션
이 강의에서는 Node Sass가 현재 환경에 대한 바인딩을 찾을 수 없습니다
문제에 대한 해결책을 배웁니다. 그러나 시작하기 전에 문제의 본질을 파악해야 합니다.
Node Sass가 현재 환경에 대한 바인딩을 찾을 수 없습니다
는 무엇입니까?
nvm
과 같은 노드
버전 관리자를 사용하는 경우 때때로 npm
모듈 경로 중 일부와 충돌하여 현재 사용 중인 버전과 다른 버전을 사용하려고 시도할 수 있습니다.
Node Sass가 현재 환경에 대한 바인딩을 찾을 수 없습니다
의 원인
다음은 오류가 발생할 수 있는 이유의 예입니다.
-
단일 컴퓨터에 하나가 아닌 두 개의 서로 다른 버전의
Node
(글로벌 및 프로젝트별 버전)가 설치되어 있을 수 있기 때문입니다. Node.js4.x
버전을 사용하는 동안 Gulp 빌드가 실행되면 Sass 파일이 적절하게 컴파일됩니다.C:Program Files (x86)\nodejs
로 이동하여 VS 기본 설치 외에node.js
버전이 있는지 확인하십시오. 두 가지 다른 버전의Node.js
가 설치되어 있을 수 있습니다. -
이 문제는
node-sass
에 현재 사용 중인 운영 체제에 대한 적절한 바인딩이 없을 때 나타납니다. 이 문제는Docker
를 사용하고Dockerfile
의 컨테이너 파일 시스템에노드 모듈
을 직접 추가하거나Docker 볼륨
을 사용하여 마운트할 때 자주 발생합니다.이 두 가지 방법은 모두 이전 문장에 설명되어 있습니다. 컨테이너의 아키텍처가 기존 운영 체제의 아키텍처와 다를 가능성이 큽니다.
예를 들어
node-sass
는macOS
에 설치되지만 머신 컨테이너의 운영 체제는Ubuntu
입니다. -
node-sass
노드 모듈이 사용하는 노드 버전은 사용하는darwin
바이너리 파일에 의해 결정됩니다. 이 문제는 바이너리 파일이 다운로드되지 않았거나 잘못된 바이너리 파일이 다운로드되었기 때문에 발생합니다. -
컴퓨터에서
/.npm
및/.node-gyp
폴더를 삭제하지 않은 경우 이 문제가 발생할 수 있습니다. 이는/.node-gyp
폴더에 포함된 노드 버전이 컴퓨터의 다른 위치에 설치된 노드 버전과 다를 수 있기 때문입니다. -
다른 경우에는
Task Runner
탐색기가 우리 프로젝트의 문제를 해결하는 것을 목표로 하기 때문에 이 문제를 일으킨 책임이 있습니다. 드롭다운 목록을 사용하여 프로젝트로 이동하면Task Runner
탐색기 옆에 있는새로 고침
버튼에 해당 작업이 표시됩니다.
Node Sass가 현재 환경에 대한 바인딩을 찾을 수 없습니다
에 대한 솔루션
다음은 주어진 오류에 대해 가능한 해결 방법입니다.
맥OS용
-
CMD+SHIFT+G
-
/usr/local/lib/node-sass
-
마우스 오른쪽 버튼을 클릭하고 이름을 바꿉니다(여전히 동일한
node-sass
여야 함). -
그런 다음
npm install node-sass -g
명령을 실행합니다.
마이크로소프트 비주얼 스튜디오용
-
비주얼 스튜디오 2015:
다음 단계를 따르십시오.
도구
>옵션
>프로젝트 및 솔루션
>외부 웹 도구
-
비주얼 스튜디오 2017, 2019, 2022
-
도구
>옵션
>프로젝트 및 솔루션
>웹 패키지 관리
>외부 웹 도구
-
재정렬 경로
$(DevEnvDir)\Extensions\Microsoft\Web Tools\External
. -
node module
폴더를 삭제한 다음npm rebuild node-sass
를 실행합니다.
윈도우용
노드 모듈을 다시 설치하면
node-sass
의 예상 바이너리가 다운로드됩니다. 일부 사용자의 경우 노드 버전이node-sass
버전과 호환되는지 확인해야 합니다.rmdir node_modules npm cache clean --force npm i npm rebuild node-sass --force
도커용
-
.dockerignore
를 추가하고 내부에node_modules
를 추가합니다. -
docker
환경에 대한 바인딩은 로컬 컴퓨터 환경에 대한 바인딩이 아닌npm install
중에 설치됩니다.
2개 버전 설치 시
-
도구
>옵션
>프로젝트 및 솔루션
>웹 패키지 관리
>외부 웹 도구
로 이동합니다. -
새 항목을 추가하려면 버튼 블록의 오른쪽 상단 모서리에 있는 버튼을 사용하십시오.
-
C:\Program Files (x86)\nodejs
를 입력하고 Enter를 눌러 확인합니다. -
우선 순위 목록 맨 위에 두십시오.
누락된 바인딩
해결 방법은 다음과 같습니다.
-
누락된 바인딩 파일을 다운로드합니다.
-
파일 이름을
binding.node
로 바꿉니다. -
존재하지 않는 경우
node_modules/node-sass/vendor/darwin-x64-11
(오류 메시지의 경로) 디렉토리를 생성합니다. -
node_modules/node-sass/vendor/darwin-x64-11
에 바인딩 파일을 추가합니다.
-
I am Waqar having 5+ years of software engineering experience. I have been in the industry as a javascript web and mobile developer for 3 years working with multiple frameworks such as nodejs, react js, react native, Ionic, and angular js. After which I Switched to flutter mobile development. I have 2 years of experience building android and ios apps with flutter. For the backend, I have experience with rest APIs, Aws, and firebase. I have also written articles related to problem-solving and best practices in C, C++, Javascript, C#, and power shell.
LinkedIn