Правильное использование родительских свойств

0

Я действительно новичок в AngularJS, и я не знаю лучших практик, поэтому вот мой вопрос.

Каково рекомендуемое использование свойств контроллеров родителей? Должен ли я использовать разные псевдонимы через весь webapp или есть другой способ использования vars и методов родительского контроллера?

Я использую partials html и, кажется, может сбивать с толку, см. UserCtrl.doSomething, когда частичное не имеет объявления userCtrl (потому что его объявлено на частичном, которое включает этот).

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

Теги:
scope
parent
controllers
partials

1 ответ

0
Лучший ответ

Вам следует избегать использования переменных $ parent и scope, которые не объявлены в вашем контроллере.

Зачем? Потому что, если вы его используете, ваш контроллер будет напрямую зависеть от того, где вы его создали (ng-controller). Поэтому вы не будете уважать шаблон MVC. Ваши контроллеры не должны зависеть от вида.

Ваш контролер не должен знать, что такое его родители. Потому что вы можете это сделать, это не значит, что вы должны это делать.

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

  • 0
    Хорошо, я могу поделиться данными с сервисами, но что если мне нужно вызвать метод области действия родительского контроллера?
  • 0
    Сервисы тоже могут хранить функции . И если вам действительно нужен этот метод на контроллере (если этот метод не может быть в одиночном (сервис) и действительно зависит от экземпляра контроллера), вы можете использовать угловые события . Но службы всегда должны быть первыми, о чем вы должны помнить: внедрение угловой зависимости - очень хороший инструмент.
Показать ещё 1 комментарий

Ещё вопросы

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