如果我在目录中键入tsc,则会收到以下错误消息:
src/temp.ts:3:24 - error TS2683: 'this' implicitly has type 'any' because it does not have a type annotation.
但是,如果我在完全相同的目录中键入tsc src / temp.ts且没有代码更改,则我的TypeScript会编译。
这两个命令为什么有区别?
答案 0 :(得分:2)
这与所使用的设置有很大的区别。
如果执行tsc src/temp.ts
,则编译器将编译使用默认设置指定的文件。
如果执行tsc
,则编译器将从tsconfig.json
提取设置,基本上等同于tsc -p tsconfig.json
。
可能由于错误而将您的tsconfig.json
设置为strict
或noImplicitThis
,而默认值为false。这就是为什么您遇到一个错误而不是另一个错误的原因。