モデルの値に応じて表示または非表示にしたいアンカー タグがあります。
<table>
<tr ng-repeat="item in items">
<td>Other Stuff</td>
<td>
<a href="#/somewhere" ng-show="model.showIt" myCustomDir="some value" onClick="bar(item)" />
</td>
</tr>
</table>
今、私のディレクティブには次のものがあります。
app.directive('myCustomDir', function() {
var def = {
restrict: 'A',
scope: {
onClick: "&"
},
link: function(scope, element, attrs) {
var hover = angular.element("<div><b>Some Text</b></div>");
var button = hover.find('b');
button.on('click', function() {
scope.$apply(function() {
scope.onClick();
})
});
}
};
return def;
})
問題は、ディレクティブを含めるとすぐに、動作しなくなったと思われる ng-show ディレクティブです。これは、ディレクティブが分離スコープで動作するため、親スコープのモデルが存在しなくなったためです。
タグがクリックされたときに呼び出したいメソッドを誰かに許可しながら、ディレクティブを ng-show でうまく再生するにはどうすればよいですか。
興味のあるすべての人のためのプランカー。http://plnkr.co/edit/BLMCgB