2017-06-18 15 views
1

angularjsで複数のルーティングされた状態を有する一方で、状態のそれぞれが、今私はこのオペレータによるビューモデルを使用していますため、(私の場合は)別々のコントローラによって操作されています。今私は他の状態のスコープに起こる他の状態のプロパティと一致する$スコープ変数にプロパティがあるかどうかを知る必要がありますか?

+0

はい、ビューが破棄されて別のビューに置き換えられると、古いコントローラとそのスコープは破棄されます。 – georgeawg

答えて

1

インスタンス化されたコントローラが、プロトタイプで親$ scopeオブジェクトにリンクされた新しいスコープオブジェクトを作成するとき。したがって、2つの別々の兄弟コントローラがある場合、それぞれのオブジェクトは完全に分離されており、接続はありません。

this(あなたがあなたのコントローラでthis.someProp$scope.vm.somePropを指します、その後"ng-controller="MyCtrl as vm"vmを指定した場合)のキーを指定controllerAs下$scopeにプロパティを添付しますcontrollerAs構文でコントローラを使用しました。

このように、技術的には、特定の質問に関してthisまたは$scopeを使用しても差はありません。

あなたは最善のアプローチは、それを公開するサービスを持つことである、とあなたがそのサービスを注入し、両方のコントローラから状態を取得するコントローラ間の共有状態を持っているしたい場合。

関連する問題