ホームページ >ウェブフロントエンド >jsチュートリアル >AngularJS コントローラーはどのように相互に通信できるのでしょうか?
AngularJS コントローラーの相互通信
ある AngularJS コントローラーは別の AngularJS コントローラーを呼び出すことができますか?
はい、 AngularJS は、コントローラーがそれぞれのコントローラーと通信するための複数のメカニズムを提供します。
サービスの共有
効果的なアプローチの 1 つは、コントローラー間でサービス インスタンスを共有することです。
angular.module('MyApp', []) .service('SomeDataService', function() { // Shared data or methods }) function FirstController(SomeDataService) { // Use the data service... } function SecondController(SomeDataService) { // Access the same data service instance }
イベントの送信Scope
別の方法では、スコープ:
function FirstController($scope) { $scope.$on('someEvent', function(event, args) { // Listen for the event }); } function SecondController($scope) { $scope.$emit('someEvent', args); // Trigger the event }
追加の通信メソッド
AngularJS は以下もサポートしています:
以上がAngularJS コントローラーはどのように相互に通信できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。