내 package.json
에는이 방식으로 정의 된 스크립트가 거의 없습니다. 내가 $ npm run lint:fix
을 실행하면npm 스크립트 명령 줄 인수를 전파하는 방법은 무엇입니까?
{
"name": "project",
"scripts": {
"standard": "./node_modules/.bin/standard",
"lint": "npm run standard",
"lint:fix": "npm run lint -- --fix"
}
}
나는 인수 --fix
이 ./node_modules/.bin/standard
에 전파되지 않는 것을 발견했습니다. 이것은 내가 얻는 결과입니다. --fix
인수가 제대로 전파되지 않았기 때문에
bash-3.2$ npm run lint:fix > [email protected] lint:fix /path/to/my/project > npm run lint -- --fix > [email protected] lint /path/to/my/project > npm run standard "--fix" > [email protected] standard /path/to/my/project > standard standard: Use JavaScript Standard Style (http://standardjs.com) standard: Run `standard --fix` to automatically fix some problems. /path/to/my/project/data/someFile.js:38:34: Extra semicolon. npm ERR! Darwin 16.0.0 npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "standard" "--fix" npm ERR! node v6.9.4 npm ERR! npm v3.10.10 npm ERR! code ELIFECYCLE
여기에 오류가 있습니다.
글쎄, 내 질문은 linting 또는 standardJs 주위되지 않습니다. 인수를 최상위 스크립트까지 올바르게 전달하는 방법을 알고 싶습니다.
안녕하세요 @edwarddamato, 나는 두 번'- --'가 필요하다고 생각합니다. Coz, 첫 번째 하이픈 집합은 npm script 명령과 인수 (스크립트에 전달해야하는 인수) 사이의 구분 기호이며 두 번째 집합은 인수 자체입니다. – Goje87