VS Code @ts-check in JavaScript file not checking all things - nonexistent property not erroring

49 views Asked by At

// @ts-check

const obj = {
  str: `a string`,
};

console.log(obj.nonexistant); // no error (it should be erroring)

let num = 0; // type number
num = obj.str; // has error (good)

Why is the first issue not showing the red underline error/problem in VS Code?

1

There are 1 answers

1
starball On BEST ANSWER

The typing is fine. I'm pretty sure this is a configuration thing. Try adding a jsconfig.json with "strict": true, or "noImplicitAny": true, in its compilerOptions field, or a tsconfig.json with the same, along with "allowJs": true, and "checkJs": true,.