$ timeout立即运行,而不是等待超时

问题描述 投票:0回答:1

我正在开发一个显示通知的服务,并在一段特定的时间后隐藏它,但是$ timeout中的代码立即运行,我知道显示部分有效,因为当我逐行运行时我可以看到它,但是当我进入超时线时它被隐藏,此部分的超时设置为10秒。下面是$ timeout部分

    $timeout(() => {
        var domElement = angular.element(
            document.querySelector('#toast-notification')
        );
        domElement.removeClass('show');
    }, data.eventDuration);
javascript angularjs timeout settimeout
1个回答
0
投票

请注意,data.eventDuration必须是10000 10秒,因为$timeout工作时间为毫秒。

var data = {};
data.eventDuration = 10000;
// now your function should be called after 10 seconds.

$timeout(() => {
    var domElement = angular.element(
        document.querySelector('#toast-notification')
    );
    domElement.removeClass('show');
}, data.eventDuration);
© www.soinside.com 2019 - 2024. All rights reserved.