私は、本質的に自己却下するメッセージを表示することに取り組んでいます。5 秒後、メッセージ バーは消えます。ただし、複数のメッセージが表示されている場合、表示されたメッセージ バーが閉じられると、動作は同じコンテナーに複数のメッセージを表示します。
このため、最初のメッセージでバーを表示したら、5 秒後に自己消去するコードを次に示します。
window.setTimeout(function () {
bar.getValue('isVisible').setValue(false);
this.clearMessage(bar);// clears the message
bar._isShowing = false;
setTimeout(function() {
//execute the last action in the queue (if any)
dequeueAction(); fires the next message in queue.
}, 100);
}, 3000);
私の質問は、最初のメッセージが閉じられる前に別のメッセージが発生した場合、それをキューに入れているということです。ただし、最初のメッセージを閉じてからキューに 2 番目のメッセージを表示するまでにかなりの遅延が必要です。ただし、2 番目のメッセージの表示を遅らせるためのタイムアウトは、すでに 3000 ミリ秒のタイムアウト内であるため、機能しません。
最初のメッセージを閉じて 2 番目のメッセージを表示するのを遅らせるにはどうすればよいですか? 注: 2 番目の setTimeout がなくても機能しますが、遅延はありません。
どんな助けでも大歓迎です。