看来Chrome的Batarang插件刚刚更新。添加了新功能Angular Hint
今天给了我一堆警告。并且有一条指令说:
根据最佳实践的名称控制器 (9551(
控制器名称应以大写字符开头,以后缀控制器结尾。例如:用户控制器。
请考虑将 homeController 重命名为 HomeController。
我们 Angular 开发人员不是总是对 JavaScript 对象使用驼峰大小写的名称吗?任何人都可以告诉我们为什么巴塔朗更喜欢帕斯卡案?
还有更多问题:
- 我们在哪里可以找到最新"最佳实践"的文档?
- 如果我们不想对现有的 Web 应用程序遵循这种"最佳实践",那么如何打开这种类型的"提示"?
Batarang提出了这个建议,因为控制器函数实际上是构造函数,而构造函数 - 按照惯例 - 在JavaScript中以大写字符开头。
这与其他工件(如筛选器或服务(不同。它们是使用小写字符编写的,因为它们不被视为构造函数。
对于控制器来说,这实际上很有意义,因为您可能希望在一个网站中拥有单个控制器的多个实例。
在 JavaScript 中,除了构造函数之外,最佳做法实际上是将所有内容小写:这样开发人员就知道何时将new
与函数一起使用,何时不使用它。潜在的问题是,从技术上讲,JavaScript 中的函数和构造函数之间没有区别。两者都只是函数,它们只是以不同的方式处理this
关键字(这就是new
在引擎盖下的影响(。
对于"最佳实践"部分...我会使用 Angular 文档来了解如何定义控制器。在那里它说它是一个构造函数(尽管,说真的,它是隐藏的(。
至于如何关闭它...不,对不起,我不知道这是否真的可能(如果是这样,我不知道该怎么做(。另一方面,我建议问问自己,你是否真的想以不同的方式做这件事,是否有一个共同的最佳实践。