2016-06-18 2 views
2

에 대해 서로 다른 eslint 규칙을 작성하는 것은 동기 부여 예제 esLint가 실패 할 경우 빌드 시스템 및 by-design 중 일부는 빌드 파이프 라인의 나머지를 실행하는 것을 방지합니다. error Unexpected console statement no-console여기에 지역 개발

은 내가 효율적으로 원하는 것은 특정 규칙 (경고 또는 변환) 해제되는 dev 환경을 설정하는 것입니다, 다음 엄격한 규칙과 production 환경 설정. 그리고 나는 그 코드를 로컬에서 쉽게 토글 할 수있어서 코드를 CI 서버에 제출하기 전에 코드가 작동하는지 확인할 수 있습니다.

관련성있는 코드 스 니펫을 찾을 수 없으므로 슬프다. 내 빌드 환경은 단지 npm 개의 스크립트 (esLint CLI + package.json 만 사용)이지만 다른 빌드 환경에서 솔루션을 포팅해도 행복 할 것입니다.

지금은 // eslint-disable-line 또는 로컬로 .eslintrc 파일을 수정하고 실수로 실수로이를 확인하지 않기를 바랍니다. 더 좋은 방법이 있어야합니다.

답변

1

커밋이 발생하기 전에 코드가 확인되는 곳에서 사전 커밋 후크를 사용하지 않는 이유는 무엇입니까? 로컬 또는 .eslintrc 파일을 사용하는 경우 주석을 사용하여 원하는 규칙을 항상 비활성화 할 수 있습니다.

자세한 내용은 https://github.com/jhurliman/precommit-hook을 참조하십시오. 솔직히이 모든 것이 개발 의존성 일 필요가 있다고 생각합니다. 생산물에 보푸라기가 없어야합니다.

마침내 나는 꿀꿀 거리거나 꿀꺽 꿀꺽 마는 것 같은 작업 주자를 추가 할 것입니다.이 방법으로 당신은 당신이 당신의 코드에 필요한 당신의 보푸라기, 단위 테스트 및 다른 온 전성 검사를 실행할 수 있습니다. GitHub의에 관련 스레드에서

+0

사전 커밋 (pre-commit) 훅은 cp 후크 .git/hooks없이 개별 컴퓨터로 밀어 내리기가 쉽지 않기 때문에 어렵습니다. 차라리 .eslintrcdev와 .eslintrcprod가있는 쉘 스크립트를 추가하고 필요에 따라 .eslintrc에 하나 또는 다른 하나를 복사합니다. 나는 주자에 관한 정치 토론에 들어가는 것을 피하고 싶다. 오해의 경우를 대비하여 명확히하기 위해 : * 우리는 make + npm + 노드의 태스크 러너를 필요에 따라 사용합니다. – AnilRedshift

+0

필자가 이상적으로 바라는 것은'eslint --env dev ...'또는'eslint --dev prod' (오늘 지원됨)를 실행할 수있는 것과 같지만 내 eslintrc에 규칙이 있습니다. 이'dev/no-console : [ 'off']'와 같은 것은 지원되지 않습니다. 이 문제를 해결할 수있는 영리한 방법이 있는지 여부와 관계없이, 나는 그 기능을 eslint로 가져올 수 있는지 확인할 것입니다. – AnilRedshift