거짓 긍정 "연결할 수 없는 코드가 감지되었습니다.ts(7027)"? (False positive "Unreachable code detected.ts(7027)"?)


문제 설명

거짓 긍정 "연결할 수 없는 코드가 감지되었습니다.ts(7027)"? (False positive "Unreachable code detected.ts(7027)"?)

다음 스니펫은 console.log()에서 Unreachable code detected.ts(7027)를 반환합니다. Visual Studio Code v1.43.2에서 실행 중입니다.

6
const foo = (() => {
  try {
    // operation like "return fs.readFileSync("./credentials.json")" is more likely to fail (nodejs)
    // following line is just placeholder
    return { val: 4 };
  } catch (err) {
    return { val: ‑1 };
  }
})();

console.log(foo.val); //vs throws unreachable

TypeScript Playground example

Is it really a false positive?


참조 솔루션

방법 1:

If you really wanted to implement it this way, you'd need to have some sort of fallback for val if the catch occurs.

Implement it this way:

const foo = (() => {
  let val = undefined
  try {
    val = 4
  } catch (err) {
    throw new Error(err);
  }
  return { val }
})();

console.log(foo.val);

It may be just an issue with TypeScript, but this will fix the problem. that TS is moaning about.

(by IGLAKBarry Michael Doyle)

참조 문서

  1. False positive "Unreachable code detected.ts(7027)"? (CC BY‑SA 2.5/3.0/4.0)

#visual-studio-code #TypeScript #javascript






관련 질문

TypeScript, VSCode: vscode의 내부 버전으로 전환할 때 keyof 유형이 예상대로 작동하지 않습니다. (TypeScript, VSCode: keyof type not working as expected when switching to insider version of vscode)

Visual Studio Code가 이상하게 작동합니다. (Visual Studio Code acts weird)

거짓 긍정 "연결할 수 없는 코드가 감지되었습니다.ts(7027)"? (False positive "Unreachable code detected.ts(7027)"?)

미니맵에서 Visual Studio Code 하이라이트 선택(스크롤바 아님) (Visual Studio Code highlight selection on minimap (not scrollbar))

소품과 값 사이에 공백을 적용하기 위한 Sass linting 규칙이 VS Code에서 잘못 작동합니까? (Is the Sass linting rule for enforcing a space between the prop and value working incorrectly with VS Code?)

VSCode(Mac) 2020의 C++ std_lib_facilities.h 파일 (C++ std_lib_facilities.h file in VSCode (Mac) 2020)

pytest를 사용하여 VSCODE에서 python 테스트 설정 문제 (Issues setting up python testing in VSCODE using pytest)

Coderunner 문제 Mac (Coderunner issues Mac)

디버깅 작업 전환을 위한 VisualStudio Code 바로 가기 키 (VisualStudio Code shortcut key for switching debugging task)

vs 코드에서 PHP 자동 완성이 작동하지 않습니다 (PHP auto complete in vs code doesn't work)

VSCode powershell 함수 서명 인텔리센스 제안 (VSCode powershell function signature intellisense suggestions)

iPython 셸에서 인라인으로 플롯할 수 없음(터미널 및 VScode 터미널 창) (Can't plot inline in iPython shell (Terminal and VScode terminal window))







코멘트