我正在构建一个节点应用程序,并且在 .js 中的每个文件中习惯于在各种包中执行此操作。
let co = require("co");
但是得到
等等所以使用打字稿似乎整个项目只能有一个这样的声明/要求?我对此感到困惑,因为我认为let范围仅限于当前文件。
let
我刚刚有一个正在运行的项目,但是在重构之后,现在到处都是这些错误。
有人可以解释吗?
我能得到的最好解释来自Tamas Piro 的帖子。
TLDR;TypeScript 将 DOM 类型用于全局执行环境。在您的情况下,全局窗口对象上有一个“co”属性。
要解决这个问题:
重命名变量,或
使用 TypeScript 模块,并添加一个空的导出{}:
export {};
或者
编辑 TypeScript 项目目录中的 tsconfig.json。
{ "compilerOptions": { "lib": ["es6"] } }