Я новичок в угловом, поэтому, вероятно, это простой вопрос. У меня есть этот фабричный ресурс в данный момент:Поделитесь теми же данными между несколькими контроллерами, используя ngResource
angular.module('resources.survey', ['ngResource'])
.factory('Survey', function ($resource) {
return $resource('/backend/surveys/:surveyId/data', {surveyId: '@id'});
});
Контроллер:
.controller('PagesCtrl', function (Survey) {
var survey = Survey.get({surveyId: 2});
//now I want to change survey variable and share it between two controllers
});
Там нет проблем с ngResource я могу получить данные с сервера. Однако я хочу манипулировать данными с сервера и использовать одни и те же данные в других контроллерах (возможно, используя DI) и разрешать манипуляции с данными. Я знаю, что это можно сделать с помощью $ rootScope, но мне было интересно, есть ли другой способ.
Не могли бы вы добавить пример, пожалуйста? Это было бы очень полезно. – sarunast
Я довольно новичок в обещаниях ($ q). Почему вы используете их здесь? Как они помогают? – sarunast
Вам нужно знать, когда асинхронный вызов завершен, поэтому вы возвращаете обещание. Поэтому в вашем контроллере вы выполняете 'Survey.getSurvey (1). Then (функция (опрос) {// данные опроса;});' – Chandermani