Поведение контроллера внутри директив

Я знаю что$scope изcontroller может быть разделен на функцию ссылки вdirectives.

Например, в этом коде я могу вызвать функцию из объявленного контроллера, чтобы напечатать «Hello World» на консоли браузера:

 .directive('myDirective', [function () {
        return {
            restrict : 'E',
            replace : true,
            controller: 'MyController',
            templateUrl : 'directives/myDirective.tpl.html',
            link : function (scope, elem, attrs, controller) {
                scope.message = 'Hello World!';
            }
        };
    }])

    .controller('MyController', [function ($scope, $element, $attrs, $log, $timeout) {

        // $timeout to wait the link function to be ready.
        $timeout(function () {
            // This prints Hello World as expected.
            $log.debug($scope.message);
         });


        });
    }])

Хорошо, это работает отлично.

Мои вопросы:

В этом подходе этоТАКОЙ ЖЕ объем, который будет разделен между контроллером и директивой?Каковы последствия использования этого подхода? Давайте предположим, что я будуне манипулироватьDOM элементы вcontroller, только вlink function.Мне действительно нужно избегать манипулирования элементами DOM в этомcontroller? Даже если$scope, $elemи т. д. одинаковы?

Это вопросы, которые я не нашел наУгловая директивная документация.

Вот плункер с примером кода.

Ответы на вопрос(3)

Ваш ответ на вопрос