当前位置: 首页 > 面试题库 >

AngularJs指令命名约定

冀景明
2023-03-14
问题内容

定义angularJs指令时,我们必须以’camelCase’语法的形式对其进行命名,但是当我们使用它时,我们必须以’camel-
case’的形式对其进行命名。问题是为什么要这样做?

我知道这是为了避免命名冲突(现在/将来),但是为什么我们在定义和使用时必须使用不同的名称。我们不能直接以“驼峰案例”的形式定义它吗?


问题答案:

它很重要的原因有两个。

首先,HTML属性不区分大小写,这意味着“ someName”和“ somename”是同一属性。因此,最好的样式是使用“ kebab-
case”表示法来分隔属性名称中的单词。这就是为什么我们对HTML属性和标记名称使用“属性名称”语法。

另一方面,kebab-
case名称在Javascript中不是有效的标识符,因此,为了将此类名称用作Angular指令,我们必须使用冗长的括号符号。但是由于在Javascript世界中,camelCase是用于命名变量和对象属性的标准事实,因此Angular使用规范化(请参阅源代码)将kebab-
case名称转换为camelCase,反之亦然。



 类似资料:
  • 问题内容: 有谁知道在构建应用程序时是否存在任何官方的或最受欢迎的Angular命名约定参考? Angular具有许多不同类型的组件,例如过滤器,指令,服务等。您是否同意在应用程序中实现引用命名约定会有意义? 例如: 如果需要创建新的过滤器,应该如何命名它们,例如[Something] Filter或filter [Something]或其他名称? 同样适用于控制器,服务,指令等。 我想知道的其他

  • 问题内容: 这对我有用(服务器端验证示例): AngularJS:与服务器端验证集成 但是,我决定问其他问题。 在该示例中,我们使用 unique-email 指令: 但是在创建指令时,我们使用 uniqueEmail : 为什么?以某种方式命名约定/规则是否与之相关?angular如何知道在哪里看以及如何将彼此连接? 我只是想知道,因为当我使用它不起作用。直到我键入“唯一电子邮件” 同样如果我键

  • 主要内容:AngularJS 指令,AngularJS 实例,数据绑定,AngularJS 实例,重复 HTML 元素,AngularJS 实例,AngularJS 实例,ng-app 指令,ng-init 指令,ng-model 指令,ng-repeat 指令,创建自定义的指令,AngularJS 实例,限制使用AngularJS 通过被称为 指令 的新属性来扩展 HTML。 AngularJS 通过内置的指令来为应用添加功能。 AngularJS 允许你自定义指令。 AngularJS 指令

  • 为了在跨API开发中向开发者提供一致的开发体验,所有的命名应该保证: 简单 直观 一致 这适用于接口、资源、集合、方法以及消息的命名。 因为很多开发者并非以英语作为母语,所以命名约定的目标之一是确保大多数开发者可以更容易理解 API。对于方法和资源,我们鼓励使用简单、直观和一致的单词来命名。 API 中的命名应该使用正确的美式英语。例如,使用美式英语的 license 而非英式英语的 licenc

  • 在本节,我们不会讨论适用于大规模和可维护的最佳 CSS 命名方案,因为这不仅仅超过了个人的能力范围,也不是一个Sass样式指南可以解决的问题。我个人推荐遵从 CSS Guidelines 的建议。 良好的命名对保持整体代码的一致性和可读性非常重要,在 Sass 中可以命名的地方如下: 变量; 函数; 混合宏。 由于 Sass 占位符遵循和类名相同的命名模式,因此被视为常规的 CSS 选择器,也就在

  • 函数名 小技巧 使用小写字母,并用下划线分隔单词。使用双冒号 :: 分隔库。函数名之后必须有圆括号。关键词 function 是可选的,但必须在一个项目中保持一致。 如果你正在写单个函数,请用小写字母来命名,并用下划线分隔单词。如果你正在写一个包,使用双冒号 :: 来分隔包名。大括号必须和函数名位于同一行(就像在Google的其他语言一样),并且函数名和圆括号之间没有空格。 # Single fu