1

コンポーネント属性の命名規則または優先命名規則はありますか?

私は破線を見てきました:

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

そしてキャメルケース:

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

独断的なフレームワークである ember は、これらの命名規則の少なくとも 1 つを強制すると思っていたでしょう。

4

1 に答える 1

0

キャメルケース属性のネーミングは確かに人気があります。コンポーネントに渡される属性は最終的に JavaScript のプロパティになるので、その方が良いと思います。

ダッシュ化された属性を使用する主な欠点はmyObject.myProperty、JavaScript でドット表記 ( ) を使用して名前にダッシュが含まれるオブジェクト プロパティを参照できないことです。ブラケット表記 ( ) を使用する必要がありますmyObject['my-property']

したがって、 にアクセスinitial-selectionして依存しthis.attrsたい場合は、: を使用する必要がありますが、より簡単に:this.attrs['initial-selection']にアクセスできます。initialSelectionthis.attrs.initialSelection

そのため、JavaScript 変数名でダッシュを使用できない場合は、キャメル ケースの命名規則に従う方が合理的です。

于 2015-10-18T12:33:39.360 に答える