我在让 ng-show(或 ng-hide)处理自定义指令时遇到问题。它在普通的 HTML 元素上工作得很好。
我做了一个非常简单的例子来说明这个问题:
<div ng-app="appMod">
<div ng-controller="Ctrl3">
<button>First</button>
<button ng-hide="NoSecond">Second</button>
<mybutton ng-hide="NoSecond" label="My button"/>
</div>
</div>
和JS:
function Ctrl3($scope) {
$scope.NoSecond = true;
};
var appmod = angular.module('appMod', []);
appmod.directive("mybutton", function() {
return {
restrict: "E",
template: "<div style='border: 1px solid black;'><button>{{label}}</button></div>",
scope: {label:'@'}
};
});
最终结果是 html 按钮 'Second' 被隐藏,但 'mybutton' 没有。 http://jsfiddle.net/fotoguy42/4j7td/2/
如何使 ng-hide/show 在我的小部件上工作?