AngularJS の "controller as" 構文にはいくつかの利点があり、従来の $scope アプローチのいくつかの欠点に対処します。
次の例では、2 つのネストされたコントローラーがあり、どちらも "name" プロパティを持ちます:
従来の $scope 構文:
<code class="html"><body ng-controller="ParentCtrl"> <input ng-model="name"> {{name}} <div ng-controller="ChildCtrl"> <input ng-model="name"> {{name}} - {{$parent.name}} </div> </body></code>
この例では、親の "name" プロパティにアクセスするには $parent を使用する必要があり、コードが煩雑になる可能性があります。
Controller As構文:
<code class="html"><body ng-controller="ParentCtrl as parent"> <input ng-model="parent.name"> {{parent.name}} <div ng-controller="ChildCtrl as child"> <input ng-model="child.name"> {{child.name}} - {{parent.name}} </div> </body></code>
「controller as」を使用すると、子コントローラーの「name」プロパティが親コントローラーに由来することが明確になり、可読性が向上し、潜在的なドット ルールの問題が回避されます。
AngularJS の「controller as」構文は、コードのクリーンさを強化し、ドット ルールの競合を減らし、$scope への依存関係を削除することで柔軟性を高めます。
以上がAngularJS で「Controller as」構文を選択する理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。