2

Chrome Alarms API を使用して、2 つの異なるアラームを使用する Chrome 拡張機能を作成しようとしています。それぞれ異なるアラームで処理される 2 つの特定のリスナーを作成したいと考えています。

chrome.alarms.onAlarm.addListener(function(timer) {
  reminder.displayMessage();
});

chrome.alarms.onAlarm.addListener(function(walk) {
  reminder.displayWalkMessage();
});


chrome.alarms.create('timer', {
  delayInMinutes: 5,
  periodInMinutes: parseInt(time)
});


chrome.alarms.create('walk', {
  delayInMinutes: 30,
  periodInMinutes: 60
});

私が抱えている問題は、1 つのアラームが発生すると、両方のイベント ハンドラーがトリガーされるように見えることです。アラームによってトリガーされるハンドラを指定する方法はありますか?

4

1 に答える 1

3

2 つのイベント リスナーを 1 つのイベント リスナーに置き換えます。

chrome.alarms.onAlarm.addListener(function(alarm) {
  if(alarm.name === "timer"){
      reminder.displayMessage();
  }
  else if(alarm.name === "walk"){
      reminder.displayWalkMessage();
  }
});

のコールバック関数への引数onAlarmは、タイプ のオブジェクトですalarm

于 2015-05-05T04:02:10.843 に答える