一、命名空间namespace 和模块
命名空间和模块什么情况下使用,有时候让人模糊,根据我的研究,命名空间可以不用,只要模块来组织代码,理由以下:
1.Node.js应用,默认推荐模块的代码组织方式。
2.TypeScript里模块的一个特点是不同的模块永远也不会在相同的作用域内使用相同的名字。 因为使用模块的人会为它们命名,所以完全没有必要把导出的符号包裹在一个命名空间里。再次重申,不应该对模块使用命名空间,使用命名空间是为了提供逻辑分组和避免命名冲突。 模块文件本身已经是一个逻辑分组,并且它的名字是由导入这个模块的代码指定,所以没有必要为导出的对象增加额外的模块层。
二、结论
命名空间不用,只用模块来组织代码。