ダイアログ ボックスをカプセル化するディレクティブがあり、周囲のスコープからほぼ完全に分離されています。それと通信する唯一の方法は、イベントを発生させることです。たとえば、「適用」、「保存」、「削除」、「照明を消す」などのダイアログ ボックス コマンドは、ボタンをクリックして、他のスコープが待機している対応するイベントを起動することで発行されます。
特定のイベントを処理するためにどのスコープが登録されているかがわからないため、ダイアログのコマンド イベントを からずっとブロードキャストすることにしましたが$rootScope
、もちろんそれは機能します。ただし、イベント ハンドラーがモデルを変更した場合、ビューは更新されませ$apply
ん$digest
。
ここに私のジレンマがあります:どこから電話すれば$digest
いいですか? それとも、私は全体について非常に誤解していますか?