2016-07-27 4 views
0

Django Pipline을 사용하는 장고 프로젝트에서 응용 프로그램의 정적 파일을 배포 할 때 CSS 및 JavaScript 파일을 처리하려고합니다. 그 과정에서 Babel을 사용하여 JSX 소스를 JavaScript로 컴파일하고 싶습니다. 이를 위해 babel을 호출하고 JSX 파일을 전달하는 파이프 라인 플러그인을 작성해야합니다. 바벨과 그 종속성을 설치하려면종속성으로 설치된 명령을 실행하는 의도 된 방법

, 나는 최소한의 package.json을 설정 한 : 나는 npm install을 실행하면

{ 
    "name": "my-project", 
    "version": "1.0.0", 
    "description": "", 
    "dependencies": [ 
     "[email protected]", 
     "[email protected]" 
    ] 
} 

그것이 node_modules에 필요한 모든 종속성을 설치합니다.

이 모든 것이 정상적으로 작동하지만 나를 피하는 부분이 하나 있습니다. 나는 이진 코드 babel을 실행하는 간단한 방법을 찾지 못했습니다.

$ find node_modules -name babel 
node_modules/.bin/babel 
node_modules/babel-cli/lib/babel 

$ npm bin 
[...]/node_modules/.bin 

가 의도 한 방식으로 다음 예를에 무엇인가 npmnpm bin에 의해 반환되는 node_modules/.bin 미만 바이너리를 설치합니다 바이너리 babel을 실행 하시겠습니까?

$PATH에 해당 디렉토리를 두어야합니까? 스크립트 activate과 비슷한 스크립트가 virtualenv에 있습니까? 대신 프로젝트에서 경로를 하드 코딩해야합니까?

npm의 저자는이 유스 케이스에 대해 생각해 본 것으로 확신합니다. 그렇지 않으면 Babel과 같은 프로젝트는 의도 된 용도의 회색 영역에 살 것입니다.

답변

1

npm 스크립트를 사용하는 경우 node_modules/.bin의 바이너리가 PATH에 추가됩니다. 그래서, 당신은 "build" 스크립트과 같이, 말하는을 만들 수 있습니다 다음

{ 
    "name": "my-project", 
    "version": "1.0.0", 
    "description": "", 
    "dependencies": [ 
     "[email protected]", 
     "[email protected]" 
    ], 
    "scripts": { 
     "build": "babel script.js" 
    } 
} 

npm run build 스크립트를 실행할 수 없습니다.

관련 문제