angular.js - angularjs 指令link 追加问题
本文介绍了angular.js - angularjs 指令link 追加问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
<div class="tab">
<p ng-transclude class="click" ></p>
<i class="iconfont" ng-show="show">X</i>
<i class="iconfont" ng-show="show1">Y</i>
<div ng-hide="show">
<p ng-repeat="x in data" ng-click="choiceme(x)">
{{x}}
</p>
</div>
</div>
link:function(scope,elem,attr){
scope.show=true;
scope.show1=false;
scope.choiceme=function (i){
console.log(scope.show,scope.show1);
scope.show1=!scope.show1;
scope.show =!scope.show;
console.log(scope.show,scope.show1);
};
elem.find("div").on("click",function(){{
scope.show=!scope.show;
console.log(scope.show,scope.show1);
scope.$apply();
});
}
现在的问题出现的很诡异就是ng-click事件会自动触发apply可是choiceme()中scope.show的状态的确是变化了可是没有同步到Dom中这个问题请教了
解决方案
看你的代码,点击p
标签的时候,应该scope.choiceme
和elem.find("div").on("click"
都触发了吧?
这合理么?
这篇关于angular.js - angularjs 指令link 追加问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文