Общеизвестно, что манипуляции с DOM не должны выполняться в контроллере AngularJS, но очень сложно найти, почему именно это плохо. Все источники говорят, что его трудно проверить и потому, что контроллер должен использоваться для связи между директивами, но не иллюстрирует код, почему это плохо.
По моему мнению, я бы подумал, что контроллер, в отличие от директивы, не связан с каким-либо конкретным HTML, поэтому все контроллеры модификаций DOM будут очень неудачными. Это наверняка усложнит разработку и тестирование.
Контроллер в директивах, выполняемых до того, как функции ссылок дочерних директив также потерпят неудачу, так как контроллер может не знать о том, что представляет собой фактический HTML-указатель дочерних директив. Ссылка выполняется после функции контроллера и может изменять структуру HTML.
Надеюсь, у меня есть смысл здесь, и если кто-то может пояснить, почему манипулирование DOM с контроллером - это плохо, может быть, какая-то ссылка на код кода, которая объясняет это хорошо, что было бы здорово.