我目前正在开展angular 2 web应用程序。实际上每当我双击提交按钮时。动作会发生两次。所以我想实现Jquery .on() .of() method。
我知道逻辑。 我们可以在点击提交按钮时禁用/启用带标记的按钮。
clickFunction()
{
isdisabled=false;// disable button
if(isclicked)
//service call back & clear the inputs
isdisabled = true;//enable button
}
但我不想手动做。所以任何关于在 angular 2 ??
中使用jQuery .on() and .off()方式的想法答案 0 :(得分:0)
我不确定你的意思"你不想手动做#34;。也许您正在寻找可以附加到带有条件的HTML按钮的[disabled]
属性。
另请注意,当我们的服务返回响应时,我们会禁用该按钮。如果你把它放在subscribe()
方法之外,那么它可能会太快启动按钮。
<button (click)="doAction()" [disabled]="disabled">Click</button>
doAction() {
disabled = true;
this.myService.doServiceAction()
.subscribe(result => {
disabled = false
})
}
答案 1 :(得分:0)
您可以尝试开启/关闭(启用/禁用)按钮。
error: 'Others' was not declared in this scope
答案 2 :(得分:-1)
你可以使用angular2或4来RxJs。请结帐eventsubscriber。
var source = Rx.Observable.fromEvent(document, 'mousemove');
var subscription = source.subscribe(function (e) {
result.innerHTML = e.clientX + ', ' + e.clientY;
});
答案 3 :(得分:-2)
使用ng-disabled应该可以满足您的需求。通常,$ eval和$ apply方法执行时间不到1-2毫秒。
编辑:
使用这样的东西来发出一个事件。
<button ng-click="clicked()">button<>
在控制器中:
$scope.clicked() = function() {
$scope.emit('clicked-once');
}
$scope.on('clicked-once', function(event) {
// do something here
})
跟踪带有标记的点击次数。