browser.alarms


本文作者: jsweibo

本文链接: https://jsweibo.github.io/2019/03/02/browser-alarms/

摘要

本文主要讲述了:

  1. 作用
  2. 许可配置
  3. 方法
  4. 事件

正文

作用

background.scripts中,用于延时执行一段代码

对于事件页面来说,browser.alarms是进行延时执行的唯一选择

许可配置

  • alarms

方法

create()

创建闹钟。

示例:创建名为test,在Date.now()时间戳时响起的闹钟。

1
2
3
browser.alarms.create('test', {
when: Date.now(),
});

示例:创建名为test,延时 1 分钟后响起的闹钟。

1
2
3
browser.alarms.create('test', {
delayInMinutes: 1,
});

示例:创建名为test,每间隔 1 分钟响起的闹钟。

1
2
3
browser.alarms.create('test', {
periodInMinutes: 1,
});

get()

查询闹钟。

示例:查询名为test的闹钟。

1
2
3
4
5
6
7
8
9
browser.alarms
.get('test')
.then((alarms) => {
// 如果查询到了,返回闹钟信息,否则返回undefined。
console.log(alarms);
})
.catch((error) => {
console.log(error);
});

getAll()

查询所有闹钟。

示例:

1
2
3
4
5
6
7
8
9
browser.alarms
.getAll()
.then((alarms) => {
// 如果查询到了,返回闹钟数组,否则返回空数组。
console.log(alarms);
})
.catch((error) => {
console.log(error);
});

clear()

删除闹钟。

示例:删除名为test的闹钟。

1
2
3
4
5
6
7
8
9
browser.alarms
.clear('test')
.then((res) => {
// 删除成功时res为true,否则为false。
console.log(res);
})
.catch((error) => {
console.log(error);
});

clearAll()

删除所有闹钟。

示例:

1
2
3
4
5
6
7
8
9
browser.alarms
.clearAll()
.then((res) => {
// 删除成功时res为true,否则为false。
console.log(res);
})
.catch((error) => {
console.log(error);
});

事件

onAlarm

当闹钟响起时触发

示例:

1
2
3
4
5
const callback = (alarmInfo) => {
// alarmInfo为响起闹钟的信息
console.log(alarmInfo);
};
browser.alarms.onAlarm.addListener(callback);

参考资料

本文作者: jsweibo

本文链接: https://jsweibo.github.io/2019/03/02/browser-alarms/


本文对你有帮助?请支持我


支付宝
微信