最佳答案
我正在尝试使用一个自定义 angularjs 指令在 ng-click
上设置一个确认对话框:
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>
(在这种情况下不计算 name)。这似乎是由于我的指令的终端参数。你有什么变通的办法吗?