<div>
とng-click
あり、次に<button>
と別のng-click
場合、ボタンをクリックすると両方のng-click
が起動します。ハンドラー。
これに対するイゴールの古代のPR(#31!)を見つけましたが、彼が追加したstopPropagation()
はその間のどこかで失われたようです。
二等分しようとしましたが、1.2.3、マスター、1.1.5、1.1.3、1.0.6、または1.0.3では機能しないことがわかりました。 上記のPRでマスターとIgorのコミットを二分しようとしましたが、変更が古くなり(0.10.x)、テストアプリがまったく機能しなくなりました。
Plunkrでこれを再現するための簡単なテストケース。
stopPropagation()
呼び出しは、1752c8c44a7058e974ef208e583683eac8817789によって削除されたようです。
@tboschは、これが期待どおりに機能するかどうか、またはこの状況に対処するためにできることがあるかどうかを判断してください。
伝播を停止解除する方法がないため、デフォルトでは伝播を停止できません。
伝播を停止しないための有効な使用例があります。
伝播を停止すると、伝播の停止を解除できないため、これらのユースケースは不可能になります。
例:ユースケース:
「公開」ボタンのあるアイテムのリスト。 これらのアイテムの1つをクリックすると、そのアイテムが選択されたアイテムとして強調表示されます。 これは、選択されていないアイテムの「公開」ボタンが押された場合にも当てはまります。
現在、これは可能です。このパンクを参照してください: http :
期待どおりに機能するため、これを閉じます。
クリックイベントの子divに$ event.stopPropagation()コードを追加する必要があるだけです
モバイルまたはイオンの@gomteshhatgineは機能しませんでした。 子のng-clickもトリガーされません。
私の場合は@gomteshhatgineですが、親が実行するとトリガーされます。 別のアプローチはありますか?
@maceonrails私が試したことがないモバイルについて知らない
@xenogewそれは動作するはずです
コードスニペットを共有していただけますか?
@gomteshhatgineありがとう。 それは働いた。
もう動作しません
最も参考になるコメント
クリックイベントの子divに$ event.stopPropagation()コードを追加する必要があるだけです