2014-12-25 2 views
0

У меня есть общий вопрос. Недавно я видел множество примеров того, как люди применяли все свои директивные логики в директивном контроллере (и использовали его с controllerAs) вместо использования ссылки. Я вижу определенные преимущества в этом:Размещение директивной логики внутри контроллера, а не связи

  1. Логику директивы можно легко протестировать.
  2. Вы плавно обязаны использовать «точечную нотацию» в своей модели просмотра, что предотвращает непредсказуемое поведение.

Что касается недостатков - как только логика находится внутри контроллера, она подвергается другим директивам, как будто поощряет разработчиков других директив к доступу к этим переменным/методам, даже если они не предназначены для доступа из за пределами. Я заинтересован в том, чтобы взять это на себя? Как организовать код внутри директивы.

Благодаря

+0

Это интересный вопрос. Это похоже на много перекрытие между link и directice-controller. Похоже, что в будущем это будет просто аннотированный класс, который по сути такой же, как функция конструктора ControllerAs. Можете ли вы ссылаться на некоторые из этих примеров? Являются ли они из руководства по стилю? – Martin

+0

http://teropa.info/blog/2014/10/24/how-ive-improved-my-angular-apps-by-banning-ng-controller.html @ Мартин выше - один из них. Я пытаюсь найти других, которые я прочитал –

ответ

0

Я использую Угловой в течение 4 месяцев, так что я не могу сказать, что у меня слишком много опыта. Однако в моем личном опыте я использовал контроллер только для логики. . Это должно быть общим или исполняемым до ссылки. Функция. Я думаю, вы можете скрыть какую-то логику от своего контроллера, используя шаблон модуля и только разоблачая логику, которая действительно необходима. В моей защите я не писал действительно сложных контроллеров, но так я и пошел. (Извините за мое плохое письмо, я отвечаю с моего телефона)

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