[reactjs] tslint는 console.log에 대한 호출이 허용되지 않는다고 말합니다. 어떻게 허용합니까?

방금 typescript와 함께 create-react-app을 사용하기 시작했습니다.

create-react-app my-app --scripts-version=react-scripts-ts

기본 tslint.json 구성은 console.log ()를 허용하지 않습니다.

(현재로서는) 어떻게 console.log를 활성화 할 수 있습니까?

이에 대한 문서는 https://palantir.github.io/tslint/rules/no-console/에 있습니다. 그러나 그들은이 줄을 어디에 둘지 말하지 않습니다.

    "no-console": [true, "log", "error"]

tslint.json 구성 파일 구문을 검색하고 찾았 으므로 다음을 시도했습니다.

"rules": {
    "no-console": [true, "warning"]
}

경고 일 뿐인 로그 메시지를 얻으려는 시도. 그러나 그것은 작동하지 않았습니다.

내가 가지고있는 console.log () 줄 몇 개를 주석 처리했지만 앞으로이 작업을 수행 할 수 있기를 원합니다.



답변

오류 메시지를 한 번만 방지하려면 // tslint:disable-next-line:no-console호출 직전에 줄을 추가하십시오 console.log.

규칙을 완전히 비활성화하려면 다음을 추가하십시오 tslint.json(대부분 루트 폴더에 있음).

{
    "rules": {
        "no-console": false
    }
}


답변

자바 스크립트와 타이프 스크립트가 혼합 된 코드베이스로 여기에 오는 분들을 위해.

jsRules에서 ‘no-console’옵션을 정의해야 할 수도 있습니다. 자바 스크립트 파일을위한 jslints 규칙 객체는 javascript와 typescript를위한 별도의 규칙 객체가 있습니다.

//tslint.json

{
  "extends": ["tslint:recommended", "tslint-react", "tslint-config-prettier"], //Example... 
  "rules": {
    "no-console": false //Disable for typescript
  },
  "jsRules": {
    "no-console": false //Disable for javascript
  }
}


답변

다음을 귀하의 tslint.json

{
   "rules": {
      "no-console": {
         "severity": "warning",
      }
   }
}


답변

이것은 콘솔 없음 규칙 (또는 해당 문제에 대한 다른 규칙)을 정의하는 올바른 구문이지만 오류가 아닌 경고 만 표시됩니다 (분명히 옵션을 원하는대로 변경).

"no-console": {
    "severity": "warning",
    "options": [
        "log",
        "error",
        "debug",
        "info",
        "time",
        "timeEnd",
        "trace"
    ]
},


답변

typeScript 버전 3에서는 아래와 같은 주요 규칙에 따라 tslint.json을 업데이트합니다.

"no-console": [
    true,
    "debug",
    "time",
    "timeEnd",
    "trace"
],

이렇게하면 debug, time, timeEnd, trace가 사용되지 않도록 지정합니다. 기본 tslint “info”가 목록에 있으면 제거하면됩니다.


답변

내가 tslint “no-console”규칙을 처리하는 방법은 내가 발견 한 파일 단위이며 개발 단계에서 편리하고 격리되어 있습니다.

첫 번째 console.log (); Visual Studio Code에는 다음을 추가하는 옵션이 표시됩니다.

// tslint : disable-next-line : 콘솔 없음

console.log ();

그래서 여기서 “-next-line”을 삭제하면이 명령이 전체 파일을 덮습니다.

// tslint : disable : 콘솔 없음

console.log ();

전체 앱의 기능을 비활성화하는 대안으로 도움이되기를 바랍니다.

RON


답변

문서에 따르면 : https://eslint.org/docs/user-guide/getting-started#configuration

  • “off”또는 0-규칙 해제
  • “warn”또는 1-경고로 규칙을 설정합니다 (종료 코드에 영향을주지 않음).
  • “오류”또는 2-규칙을 오류로 설정 (종료 코드는 1이 됨)

그건 그렇고, 올바른 설정은

{
  "rules": {
    "no-console": false
  }
}