我的项目中有两个打字稿文件:
// src/file1.ts
function foo(): void {
console.log('hello');
}
// src/file2.ts
foo();
当我编译项目时,我希望tsc
抱怨foo
中的file2.ts
没有被定义,但是编译成功。这很麻烦,因为我可能想在不同的文件中定义具有相同名称的单独函数,但是如果所有文件都共享一个范围,则不可能。
这是打字稿的预期行为吗?如何配置打字稿,要求将功能从其他文件中显式导入?
我正在使用打字稿3.4.4。这是我的tsconfig.json
:
{
"compilerOptions": {
"target": "es2018",
"module": "commonjs",
"lib": ["esnext", "dom"],
"outDir": "./dist",
"rootDir": "./src",
"strict": true,
"noImplicitAny": true,
"strictNullChecks": true,
"alwaysStrict": true,
"esModuleInterop": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true
}
}