Как перенаправить со службы на основной контроллер в angularjs?

0

Это мое первое приложение, использующее Angularjs.

Я создаю приложение, использующее AngularJs, которое предоставляет информацию о поездке из ответа API. У меня есть несколько контроллеров, каждый контроллер имеет разные страницы.

Моя проблема заключается в том, что у меня есть четыре ссылки (ссылки выглядят как испанский, французский, индийский, американский и т.д.) На моем нижнем колонтитуле каждой страницы. Если я нажму на один из них, я должен показать соответствующие результаты API на главном контроллере. Пожалуйста, ознакомьтесь с приведенной ниже диаграммой для занижения потока страниц.

Изображение 174551

Заранее спасибо!!

Теги:

3 ответа

0

Предположим, у вас есть одна страница здесь:

page1.php

Вы вызывали эту страницу с помощью Page1Controller.

и вы хотите использовать MainController в своей <form>... </form>, чем использовать ng-controller...

<html>
<head></head>
<body>
<form ng-controller="MainController">
. . .  // Code here
</form>
</body>
</html>
0

Раньше у меня было эквивалентное требование. Вот как я это сделал.

Создайте свой глобальный метод как службу и используйте его для поддержки выбранного API.

Когда пользователь нажимает на ссылку нижнего колонтитула, вы можете связать событие ng-click и транслировать событие, которое будет обрабатываться функцией $ on.

Вы можете проверить этот пример для получения дополнительной информации.

  • 0
    Спасибо, если нажмете на кнопку, я звоню в сервис. Из сервиса как перенаправить основной контроллер с ответными данными?
  • 0
    Вы можете транслировать события для этого. В сервисе вы можете вызвать $ broadcast для $ rootScope и перехватить его в главном контроллере с помощью $ on. Это позволит вам передавать данные и, если вам потребуется в будущем, даже повторно использовать их в других контроллерах, службах, директивах и т. Д.
Показать ещё 5 комментариев
0

Служба была бы идеальна для этого. Если вы создадите службу с функцией, которая отображает данные, вы можете ввести службу в каждый контроллер. Таким образом, если вы нажмете ссылку в нижнем колонтитуле, данные будут отображаться!

Проверьте здесь документацию и примеры угловых служб

  • 0
    Так мне нужно передать зависимости в каждом контроллере?
  • 0
    Да, если вы создаете сервис, который хотите использовать в нескольких контроллерах, вам нужно передать зависимость в каждый контроллер, в котором вы хотите использовать сервис.
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню