gpt4 book ai didi

Typescript 不会提示缺少导入

转载 作者:搜寻专家 更新时间:2023-10-30 21:01:00 25 4
gpt4 key购买 nike

foo.ts 的内容:

let a: Person = new Person();

bar.ts 的内容:

class Person {}

tsconfig.json 文件包含由 tsc --init 创建的默认值集。

我使用的是 2.6.2 版的 typescript 。

上面的代码简单编译,没有关于 Person 未定义的错误。如果我在 foo.ts 中将 Person 重命名为 Persons,那么它确实会抛出一个错误,指出 cannot find name 'Persons'。所以就好像它以某种方式自动导入这个文件。

另请注意,我没有在 bar.ts 中导出 Person 类。如果我确实添加了导出语句,那么一切都会正常运行 - 我会收到一条错误消息,提示 cannot find name 'Person'

有人知道这是怎么回事吗?这是用户错误吗?

编辑:

也许这在浏览器中有意义,但对我来说,这种行为在 node.js 应用程序中毫无意义。是否有禁止此行为的 Typescript 标志?

最佳答案

您的 bar.ts 不是模块,因为它没有任何导入或导出。所以它定义了一个全局的 Person 类,不需要导入,因为它是全局的。导出它,TypeScript 会提示缺少导入。

关于Typescript 不会提示缺少导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48306442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com