ng-click
カスタム angularjs ディレクティブを使用して確認ダイアログを設定しようとしています:
app.directive('ngConfirmClick', [
function(){
return {
priority: 1,
terminal: true,
link: function (scope, element, attr) {
var msg = attr.ngConfirmClick || "Are you sure?";
var clickAction = attr.ngClick;
element.bind('click',function (event) {
if ( window.confirm(msg) ) {
scope.$eval(clickAction)
}
});
}
};
}])
これはうまく機能しますが、残念ながら、私のディレクティブを使用したタグ内の式は評価されません:
<button ng-click="sayHi()" ng-confirm-click="Would you like to say hi?">Say hi to {{ name }}</button>
(この場合、名前は評価されません)。私のディレクティブの端末パラメータが原因のようです。回避策のアイデアはありますか?
コードをテストするには: http://plnkr.co/edit/EHmRpfwsgSfEFVMgRLgj?p=preview