私のサービスを使ってあるコントローラーから他のコントローラーにデータを渡そうとしているときに問題が発生しています。同じイベントで、あるコントローラーのデータをサービスに渡し、そのコントローラーのデータにアクセスする方法はありますか?
コントローラの$rootScope
を使用してプロトタイプ継承を実装し、そのオブジェクトをブロードキャストして、他のコントローラのデータにアクセスできるようにしました。
私は$rootScope
を使用していますが、私はグローバルな名前空間を汚染しています。私はこのコントローラから他のコントローラにデータを渡したいと思います。
私はテーブル内の最小限のデータを表示しています。ユーザーがテーブルの特定のレコードをクリックすると、オブジェクト全体のデータが表示されます。
これは私が処理する方法です。コントローラーAでは
<tr ng-repeat="contact in filterContacts = (contacts.contactsData | filter:sensitiveSearch | orderBy:selectBox) " ng-style="{'background-color': contact.email == selectedContact.email ? 'lightgrey' : ''}" ng-click="selectContact(contact)">
:私は、ビューからこの関数を呼び出すと、特定の行の連絡先の詳細を注入しています。私はちょうどそのデータを返すよサービスで
$scope.selectContact = function(contact) {
contactService.selectedContactInfo(contact);
};
-
var selectedContactInfo = function(contact) {
return contact;
};
は、どのように私は、同じイベント中にコントローラーBでこのデータにアクセスし、自分のビューに表示することができます。
Here is the reference Link: http://plnkr.co/edit/beOmiv?p=info
私は$rootScope
を使用する必要はありませんが、私は他のコントローラにデータにアクセスしたいと思います。
どの角度バージョンを使用していますか? – davidxxx
私は角を使用しています。1.4.9 –
あなたの必要性に対処できる完全な例があります:http://stackoverflow.com/questions/21919962/share-data-between-angularjs-controllers – davidxxx