9

タイムアウトが設定された TypeScript Web 通知を作成するにはどうすればよいですか?

次のコードを作成しましたが、デフォルトのタイムアウト前に通知を閉じることができません:

export function createNotification(title: string, body: string) {
    let now: Date = new Date(Date.now());
    let date = now.add(5).seconds();

    let options = {
        body: body,
        requireInteraction: false,
        timestamp: date
    };
    new Notification(title, options);
}

テストとして、TypeScript で 5 秒間持続する通知を作成し、ブラウザのデフォルトの動作をオーバーライドしたいと考えています。TypeScript のタイピング ファイルにリストされているその他のオプションが表示されないので、これは役に立ちます。

ES2017 通知オプション

メインのブラウザとして Firefox を使用していますが、Chrome を使用してこのソフトウェアの開発とテストを行っています。そのため、Chrome で正しく動作するが、ハックやブラウザー固有のコードを含まないソリューションであれば問題ありません。

4

1 に答える 1

9

Notification.close() を試しましたか?

function spawnNotification(theBody,theIcon,theTitle) {
  var options = {
      body: theBody,
      icon: theIcon
  }

  var n = new Notification(theTitle,options);
  setTimeout(n.close.bind(n), 4000);
}

ソース: https://developer.mozilla.org/en-US/docs/Web/API/Notification/close

于 2017-12-20T14:08:39.700 に答える