温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

angularjs指令中link方法无法正确获取element

发布时间:2020-07-17 19:43:02 来源:网络 阅读:583 作者:落风止水 栏目:开发技术

angularjs中大多在指令之中操作DOM,现在遇到一个指令中无法获取DOM的特殊情况:

var directiveCtrl=angular.module("directiveCtrl",[]);
directiveCtrl.controller("ctrlTwo",['$scope',function($scope){
    $scope.name="me";
}]);
directiveCtrl.directive("num",function(){
    return{
	restrict: 'E',
	template: '<div ng-repeat="i in [1,2]" ng-controller="ctrlTwo">`name`</div>',
	replace:true,
	link:function(scope,ele,attr){
	    console.log(ele);
	}
    };
});

输出的是[comment]而不是[div.ng-scope.ng-binding],这样无法进行DOM元素的操作。

我的解决方法是:把

ng-repeat="i in [1,2]"

放在num标签的外层标签上,一切就正常了,当然这只是避开了问题。如果有一天知道了问题所在,我会再跟上一篇作为补充。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI