2016-07-31 8 views
1

나는 npm을 사용하여 browserify를 통해 javascript 파일을 빌드합니다. 빌드하기 전에 package.json에 나열된 버전의 이름을 가진 빌드 폴더에 디렉토리를 생성하고 싶습니다.npm 스크립트에서 package.json 변수 사용

mkdir -p build/$npm_package_version 

하지만 내가 잘못 뭐하는 거지 나는 그것이

mkdir -p build/0.0.0-pre-alpha 

을 실행하려면 :

{ 
    "name": "My App", 
    "version": "0.0.0-pre-alpha", 
    "description": "App desc", 
    "main": "index.js", 
    "dependencies": { 
    "browserify" : "*", 
    } 
    "scripts": { 
    "prebuild": "mkdir -p build/$npm_package_version", 
    "browserify" : "browserify ./src/index.js ./build/$npm_package_version/js/myapp-$npm_package_version.js", 
    "build" : "npm run prebuild && npm run browserify" 
    } 
} 

사전 빌드에서 실행되는 코드는 : 여기 내 package.json의 손질 예입니다 ?

답변

2

업데이트 : 스크립트에서 mkdir에 인수를 사용할 수 없습니다. 그래서 나는 mkdirp npm module을 사용하여 끝내었다.

올드 포스트 : 답을 찾고 다른 사람을 위해

: 당신이 창에 변수를 사용하는 올바른 방법을 작업 할 때 밝혀 그래서 최종 코드가 같아야합니다

%npm_package_version% 

입니다 :

"prebuild": "mkdir -p build/%npm_package_version%" 
+0

안녕하세요, 잠시 시간이되었지만 Windows 컴퓨터에서이 방법을 시도했지만 두 가지 해결책이 모두 작동하지 않았습니다. 무엇이 잘못되었는지 압니까? – aaronmcavinue

+0

그것은 나를 위해 mkdirp 모듈을 사용하여 작동했습니다. 다음은 작업 코드입니다. "mkdirp build/% npm_package_version %/js" – LongInt

관련 문제