2016-09-21 9 views
2

여러 프로젝트에 걸쳐 공유 할 수있는 타이프 스크립트 코딩 지침을 소개하고자합니다. 붙여 넣기를 복사하지 않으려면 여러 번에 걸쳐 tslint.json을 붙여야합니다. 현재 발생했으며 우리는이 버전을 여러 번 돌았습니다.커스텀 tslint 규칙 세트를 만드는 방법은 무엇입니까?

내 가이드 라인을 tslint:recommended에두고 싶습니다. 그리고 tslint 구문이 extend을 허용한다는 것을 알았지 만 그 사용법과 그러한 패키지를 구조화하는 방법에 대해 명확하지 않습니다.

그러한 프로젝트를 그저 tslint.json으로 구성하거나 모듈을 내보낼 필요가 있습니까?

다음 패키지를 npm/sinopia 인스턴스에서 호스팅하고 싶지만 진행 방법을 잘 모릅니다.

답변

5

예. 규칙 세트가 포함 된 NPM 모듈을 만들 수 있으며 tslint.json 파일의 extends 설정에서이를 참조 할 수 있습니다.

예를 들어,이 package.jsonmy-rule-set를라는 NPM 모듈을 만들 수 있습니다

{ 
    "name": "my-rule-set", 
    "version": "0.0.0", 
    "main": "my-rule-set.json" 
} 

my-rule-set.json (주 그 package.json 참조에 mainmy-rule-set.json 파일) :

{ 
    "extends": "tslint:recommended", 
    "rules": 
    { 
     ... 
    } 
} 

그런 다음 my-rule-setnode_modules에 설치하면 tslint.json 파일을 고유 한 규칙 세트로 확장 할 수 있습니다.

{ 
    "extends": "my-rule-set" 
} 

this TSLint blog post에는 공유 가능 구성에 대한 추가 정보가 있습니다.

는 규칙 세트는 당신이해야 할 전부, 기존 규칙의 구성을 포함합니다. 그러나 사용자 정의 규칙을 구현하려는 경우 my-rule-set.json에 사용자 정의 규칙이있는 디렉토리에 링크해야합니다. 예를 들어, 다음과 같이 입력해야합니다 : "rulesDirectory": "./rules". 그런 다음 ./rules 디렉토리에 컴파일 된 .js 버전의 규칙이 포함되어 있어야합니다.

+1

멋진 대답, 노트의 한 가지 더 :'내-규칙 set.json'에서 당신이 사용자 정의 규칙이있는 디렉토리에 링크해야합니다. ' "rulesDirectory": "./rules"'그래서 예를 들어,도 뭔가를해야한다. 그런 다음'./rules' 디렉토리는 _compiled_'규칙의 .js' 버전을 포함해야합니다. 당신은 자신의 대답으로 게시 할 수 있습니다 @JKillian – JKillian

+0

을 (당신이 @cartant를 원한다면 당신의 대답에이 편집 자유롭게), 또는 변화가 충분히 작은 것으로 생각한다면,이 일을 직접 편집 할 수 있습니다. – k0pernikus

+0

'rulesDirectory' 주석을 포함하도록 답변을 업데이트했습니다. (TSLint에 대한 귀하의 작업에 감사드립니다. @JKillian, 유용한 도구입니다.) – cartant