1

组件属性是否有约定或首选命名约定?

我见过破破烂烂的:

{{my-component initial-selection='...' on-selected=(action '...') }}

和骆驼套:

{{my-component initialSelection='...' onSelected=(action '...') }}

我原以为 ember 作为一个固执己见的框架,至少会强制执行这些命名约定中的一个。

4

1 回答 1

0

驼峰式属性命名当然更受欢迎。我认为这更好,因为传递给组件的属性最终会成为 JavaScript 属性。

使用破折号属性的主要缺点是您不能在 JavaScript 中使用点符号 ( ) 引用名称中包含破折号的对象属性myObject.myProperty,您需要使用括号符号 ( myObject['my-property'])。

因此,如果您想访问initial-selection和依赖this.attrs,则必须使用:this.attrs['initial-selection'],而您可以访问initialSelection更简单的:this.attrs.initialSelection

因此,如果 dash 在 JavaScript 变量名中不合法,那么坚持使用驼峰式命名约定似乎更合理。

于 2015-10-18T12:33:39.360 回答