1

Chrome 的 Batarang 插件似乎刚刚更新。添加了一个新功能Angular Hint,今天给了我很多警告。并且有一条指令说:

根据最佳实践命名控制器 (9551)

控制器名称应以大写字符开头并以后缀 Controller 结尾。例如:用户控制器。

考虑将 homeController 重命名为 HomeController。

我们 Angular 开发人员不是一直使用驼峰式命名的 JavaScript 对象吗?谁能告诉我们为什么 Batarang 更喜欢 pascal 案例?

还有更多问题:

  • 我们在哪里可以找到最新“最佳实践”的文档?
  • 如果我们不想为现有的 Web 应用程序遵循这种“最佳实践”,那么如何转向那种类型的“提示”?
4

1 回答 1

4

Batarang 建议这样做,因为控制器函数实际上是构造函数,并且构造函数开始 - 按照约定 - 在 JavaScript 中以大写字符开头。

这与过滤器或服务等其他人工制品不同。它们使用小写字符编写,因为它们不被视为构造函数。

对于控制器,它实际上很有意义,因为您可能希望在一个网站中拥有单个控制器的多个实例。

在 JavaScript 中,实际上最好的做法是把所有东西都小写,除了构造函数:这样开发人员就知道什么时候使用new函数,什么时候不使用它。根本的问题是,从技术上讲,JavaScript 中的函数和构造函数之间没有区别。两者都只是函数,它们只是对关键字的处理方式不同this(这就是幕后new的影响)。

对于“最佳实践”部分……我会参考关于如何定义控制器的 Angular 文档。那里说它是一个构造函数(虽然,说实话,它很隐蔽)。

至于如何关闭它……不,对不起,我不知道这是否真的可能(如果是,我不知道如何)。另一方面,我建议问问自己是否真的想以不同的方式做这件事,是否有共同的最佳实践。

于 2014-12-10T15:18:14.807 回答