2014-09-05 2 views
0

Я хочу поделиться информацией между контроллером, и я не могу понять, как это сделать. У меня есть набор радиостанций с моделью radioSelect, когда у меня есть один выбранный я хочу что-то в другом контроллере для ng-hide. Я знаю, это может показаться довольно простым, но я новичок в угловой, любая помощь будет очень признательна!Использовать фабрику для обмена информацией между контроллерами

Вот моя попытка:

.factory("sessionCheck", function() { 

    var sessionCheck={}; 

sessionCheck.update = function (index) { 

    sessionCheck = index; 
    return sessionCheck; 

}; 

Я создал фабрику и впрыскивается зависимости в 2 контроллеров, 1 контроллер имеет функцию на нг-изменения для радиостанции отправить значение (которое работает отлично с обновлением). Однако было бы очень приятно, если бы я мог как-то просто поделиться информацией о радиосистемах, поэтому мне не нужно менять (она постоянно прослушивается). Конечный результат должен быть, если выбор «недель» выбран в радиообъектах в другом контроллере, который вводится этой фабрикой. Поэтому было бы идеально, если бы существовал какой-то поток между двумя контроллерами, которые слушают радиостанции.

Спасибо!

ответ

1

Я не уверен, отвечает ли это на ваш вопрос. Но если вы хотите поделиться переменной, вы можете использовать $ rootScope. Вы можете посмотреть документацию здесь https://docs.angularjs.org/api/ng/service/ $ rootScope

0

Вы переосмысление переменной sessionCheck каждое обновление с

sessionCheck = индекс;

Это значит, что на этом объекте нет функции обновления.

Просто верните функцию обновления, чтобы вы могли использовать sessionCheck в качестве службы. Это будет тот же сеанс Check, поскольку сервисы с угловыми являются единственными.

Например.

.factory ("sessionCheck", функция() {

var sessionCheck={}; 

вар обновление = функция (индекс) {

sessionCheck = индекс; возврата sessionCheck;

};

возвращение { обновление: обновление }

}

Смежные вопросы