关于 AngularJS 指令链接和 ngHref 的问题



我将尝试在这里尽可能缩短我的问题描述。

我有一个指令,如下所示

scope: false
restrict: "A"
link: function (scope, element, attributes) {
...
}

输入参数element如下所示

<div class="tab-container" my-directive>
<div ng-repeat="tab in $ctrl.tabs" class="tab">
<a ng-href="{{tab.name}}">
</div>
</div>

ng-repeat已经"解决"了,不确定这是否是正确的术语,但是ng-href尚未解决,也就是说,它没有{{tab.name}}到我需要的值。

我想知道在首先解决ng-href之后,我如何告诉该指令运行链接。

我读了一些关于require财产的信息,但它似乎只处理controller

我想知道在 ng-href 之后,我如何告诉这个指令运行链接 首先解决。

您可以将$broadcast事件从控制器发送到指令。

$rootScope.$broadcast('onHrefReady');

在您的指令中:

link : function (scope, element, attributes) {
scope.$on("onHrefReady", function (event, args) {
// do your stuff
});
}

渲染后调用link,因此您可以在收到控制器的通知后调用link内容

最新更新