2014-10-27 5 views
2

Я изо всех сил пытаюсь уловить код с задержкой до тех пор, пока обещанное не будет разрешено.Ожидание обещания разрешить в другом контроллере

Мое обещание вызывается и выполняется в контроллере A, но мне нужно часть кода от контроллера B, чтобы отложить его выполнение до тех пор, пока обещание от контроллера A не будет полностью устранено.

Я делал какие-то хаки с $scope.$watch, но я уверен, что для этого нужно еще один способ.

Я не прав?

Заранее благодарен!

ответ

0

Вы также можете сделать это с помощью службы.

Если вы можете опубликовать код, я могу быть более конкретным ... но ... служба, которая вводится в оба контроллера, позволяет вам получить доступ к общим данным. Таким образом, у вас есть контроллер B не выполняются до тех пор, некоторые «сделано» флаг не установлен в обслуживании контроллером А.

Link to service API doc

2

Мое обещание вызывается и выполняется в контроллере, но мне нужен кусок кода от контроллера B, чтобы отложить его выполнение до тех пор, пока обещание от контроллера A не будет полностью устранено.

В этом случае я бы использовал $rootScope.$broadcast.

Один контроллер посылает трансляцию сообщение в другой контроллер (или для тех, кто слушает)

Смотрите хороший пример в Fiddle

+0

NICE! Вот почему я участвую в них. Я узнал что-то новое. :) –

+0

@ E. Маггини, которую вы приветствуете –

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