JavascriptとAngularJSの新機能です。どちらもイベントリスナーのように思えます。違いは何ですか?交換可能に使用できますか?どうやって?
1
A
答えて
4
$ scope。$ scopeは$ scopeの$ broadcast()イベントを捕捉しますが、addEventListenerはページのイベントをリッスンします。彼らは似ていますが、互換性はありません。
アングルアプリで作業している場合は、別途必要な場合を除いて$ scope $を使用します。つまり、アングルアプリの外からイベントをキャッチします。単体テストを書く場合にはテスト容易性が得られ、おそらくあなたが探しているものである自分のコードからのイベントしか探しません。可能な限り、
1
いいえとは非常に似ていますが、異なるオブジェクトで動作し、互換性はありません。です。どちらもイベントを発行できるオブジェクトにイベントリスナーを追加しますが、スコープはHTMLElements(document
など)ではなく、HTMLElementsとは異なるスコープでイベントが発生します。
1
$scope.$on
を使用してください。通常、角度を使って何かをする方法があれば、そのようにする必要があります。
$scope.$on
は、すべての親のコントローラにデータを送信$scope.$emit
、およびすべての子のコントローラにデータを送信し$scope.$broadcast
と組み合わせて使用されます。これにより、アプリを通じてデータフローをより詳細に制御できます。さらに、ネイティブ・イベント・リスナーの内部でイベントを処理すると、双方向データ・バインディングが壊れます。