Angular2/TypeScript 的编码标准

Coding standards for Angular2/TypeScript

本文关键字:编码 标准 TypeScript Angular2      更新时间:2023-09-26

我想知道社区是否至少对如何在TypeScript中编写可重用的Angular2代码达成了一些共识。我试图总结我在 Angular2 背景下的发现和我想知道的内容。

模块/应用目录结构和文件名

  • 在官方教程中,我看到他们将所有代码放入app目录中,并且所有依赖项(如node_modules或键入)都在父目录中。

  • 小写文件名,组件.component.ts后缀,服务.service.ts。他们把所有文件都放在同一个目录中,这将是一个巨大的混乱?

  • 每个文件一个类/接口/枚举。对于类,函数,接口和其他名称,最好坚持TypeScript的编码准则Microsoft?

模块

  • 模块应该使用postinstall npm钩子编译和捆绑自己吗?还是像大多数 JavaScript 库那样直接在 git 上提供捆绑版本更好?
  • 当我期望我的模块仅由浏览器使用时,我应该默认使用system类型的模块还是始终使用 UMD 更好?
  • 有什么理由使用CommonJS或AMD而不是system吗?

使用第三方模块

  • 我应该期望其他开发人员会用<script>标签嵌入我的模块,还是他们会使用 System.import() 加载它?
  • 如果我的模块
  • 依赖于其他 JavaScript 库,是提供包含所有依赖项的整个模块的捆绑版本更好,还是只在package.json中定义它们?

Angular 2 Style Guide (https://github.com/mgechev/angular2-style-guide),如 Angular2 News 所示:

以下风格指南的目的是为开发 Angular 2 应用程序提供一组最佳实践和风格指南。如果您正在寻找语法、约定的固执己见的风格指南......

Angular 1 有一个社区公认的风格指南,由 John Papa 编写。实际上,将为Angular 2创建类似的东西,您可以看到它的开始与英雄之旅示例一起在 angular.io