Сделать угловую директивную функцию функцией предварительной ссылки?

У меня есть функция директивной ссылки. По умолчанию функции угловой ссылки - это функция пост-ссылки, не так ли? Как сделать это как предварительную ссылку?

app.directive("textBoxCol", function () {
        return {
            require: "^grid",
            restrict: "E",
            replace: true,
            scope: {
                title: "@title",
                cssClass: "@class",
                dataField: "@field"
            },
            link: function ($scope, element, attrs, grid) {
                $scope.type = ColumnType.TextBox;
                tableControl.addColumn($scope);
            }
        };
    });

Кстати, это использовать требуют.

1 ответ

Вам нужно будет реализовать compile функция и вернуть prelink функция от этого.

Взято из документации Angular ( https://docs.angularjs.org/api/ng/service/%24compile):

compile: function compile(tElement, tAttrs, transclude) {
  return {
    pre: function preLink(scope, iElement, iAttrs, controller) { ... },
    post: function postLink(scope, iElement, iAttrs, controller) { ... }
  }
  // or
  // return function postLink( ... ) { ... }
},
Другие вопросы по тегам