【发布时间】:2020-10-23 07:33:48
【问题描述】:
最近,我从开发人员那里读到了很多建议不要再使用命名空间,而是改用现代模块处理。我正在使用 TypeScript 向初学者教授编程,命名空间在这里非常有价值,因为人们可以在单个目录和子目录中长时间处理多个分配,而无需处理多个编译器配置文件和模块导出和导入.他们只是为任务定义一个命名空间,并在他们为它创建的文件中使用它。
所以我的问题是:有计划停止 TypeScript 中的命名空间吗?
【问题讨论】:
-
问题似乎跑题了。此外,模块确实没有那么复杂,不需要多次配置。
-
命名空间和模块从根本上解决了将代码分成离散块的相同问题。我不确定我是否真的看到命名空间比模块有什么好处。无论如何,你在这两种情况下都做同样的事情——你必须创建命名空间/模块,然后引用/导入它,这将允许你使用其中的项目。而不是
/// <reference path="dir/Utils.ts" />你必须把import * as Utils from './dir/Utils'然后Utils.foo()工作相同。无论如何,这些模块是前进的方向,所以我认为不向学生传授这些模块没有任何价值。
标签: typescript namespaces