コントローラー a と b があり、コントローラー a をクリックした後、コントロール b に p を表示するにはどうすればよいですか?
例: コントローラー a はメニュー、コントローラー b はコンテンツ領域です。a で別のメニューをクリックし、b で別のコンテンツの表示を制御します。
少し努力してみました: サービスとファクトリーを試しましたが、データを共有できるだけで、リアルタイムでトリガーすることはできません
业精于勤,荒于嬉;行成于思,毁于随。
ここでは 2 つの方法を試しました: 1. angular 独自のイベント メカニズムを使用します
コントローラーで使用され、イベント通知を b に送信するために a を追加します:
2. サービスを使用してコールバック イベントをシミュレートする 本質は、コントローラー間で使用するグローバル コールバック関数を保存することです。 リーリー
そうだね。イベントのバブリングとトンネリングのメカニズムを試すことができます。
こちらからご覧いただけます
より直接的に言うと、$broadcast と $on を試すことができますが、効率は悪くなります
上に書いたことは十分に純粋ではない(他の考慮事項と混合している)ので、純粋なバージョンを追加します。 デモが提供されています
コードは次のとおりです
1) すべてのイベントをグローバルに管理するイベント バスを作成します 2)。
ここでは 2 つの方法を試しました:
リーリー1. angular 独自のイベント メカニズムを使用します
コントローラーで使用され、イベント通知を b に送信するために a を追加します:
リーリー2. サービスを使用してコールバック イベントをシミュレートする 本質は、コントローラー間で使用するグローバル コールバック関数を保存することです。 リーリー
そうだね。イベントのバブリングとトンネリングのメカニズムを試すことができます。
こちらからご覧いただけます
より直接的に言うと、$broadcast と $on を試すことができますが、効率は悪くなります
上に書いたことは十分に純粋ではない(他の考慮事項と混合している)ので、純粋なバージョンを追加します。
デモが提供されています
コードは次のとおりです
リーリー1) すべてのイベントをグローバルに管理するイベント バスを作成します
2)。