对于namespaced js模块,是通常使用的非命名空间文件名吗?

时间:2017-01-20 21:06:46

标签: javascript namespaces javascript-namespaces

对于命名空间的js模块是否通常使用非命名空间的文件名?例如,C#类文件名通常只反映基本类名,而不是完全命名空间的类名。因此,例如,具有命名空间Acme.Administration.UserManager的UserManager类通常具有UserManager.cs的文件名。这是用于Javascript的典型模式吗?我不确定在js模块文件名中包含js模块命名空间有什么好处吗?

1 个答案:

答案 0 :(得分:0)

实际上JavaScript模块就像命名空间一样工作。它们不适用于每个文件一个导出

事实上,ES2015和更新的标准没有跨越许多文件跨越模块的概念,因为文件是模块

因此,您似乎需要改变主意,了解如何使用JavaScript。

无论如何,您可以使用NPM脚本或任务运行程序(如Grunt / Gulp)将多个文件粘合到一个文件中,这样您仍然可以在多个文件上进行开发,但实际上您正在实现单个模块文件。

就如何组织项目而言,通常会根据区域创建一个目录。例如:

  • 用户
    • managers.js
    • entities.js
  • 共享
    • stringHelpers.js
    • http.js
顺便说一句,在这个问题上采取具体方法没有标准或任何实际好处。最好的办法是定义一个约定并在任何地方使用它,以使您的源代码目录结构非常可预测。