当用户点击保存按钮时,我需要引入2秒的延迟

本文关键字:2秒 延迟 用户 保存 按钮 | 更新日期: 2023-09-27 17:59:04

我有以下代码,当用户单击保存按钮时,它什么也不做,只需将该按钮的文本更改为已保存,然后将其禁用。我用两个按钮和控制器代码实现了这一点,如下所示。

问题是,当我在加载保存按钮时点击保存,然后保存按钮消失(只是闪烁)时,它确实会显示保存按钮一秒钟,我不希望发生这种情况。怎么了?此外,我如何引入2秒延迟,然后显示"保存"按钮。

    <button type="button" id="saveEnabled"  ng-click="ctrl.onClick()" ng-if="ctrl.Status !== 'Clicked'">Save</button>
    <button type="button" id="saveDisabled" disabled="disabled" ng-if="ctrl.Status === 'Clicked'">Saved</button>

ctrl.onClick = function() {
      ctrl.Status = 'Clicked';
  };

当用户点击保存按钮时,我需要引入2秒的延迟

由于您对Angular感兴趣,请使用它的原生$timeout函数。

ctrl.onClick = function() {
 $timeout(
   function(){
      ctrl.Status = 'Clicked';
   }, 2000);
};

注意:您必须注入$timeout作为依赖项,但setTimeout()也足以满足

您可以使用setTimeout()

var delay=2000; //2 second

setTimeout(function() {//your code to be executed after 2 second}, delay);