self.addEventListener('sync', function (e) {
else if (e.tag === yyy) {
// sample_sync_db同步事件,使用indexedDB来获取需要同步的数据
else if (e.tag === 'sample_sync_db') {
var dbQueryPromise = new Promise(function (resolve, reject) {
var STORE_NAME = 'SyncData';
openStore(e.tag).then(function (db) {
var tx = db.transaction(STORE_NAME, 'readonly');
var store = tx.objectStore(STORE_NAME);
var dbRequest = store.get(e.tag);
dbRequest.onsuccess = function (e) {
resolve(e.target.result);
dbRequest.onerror = function (err) {
dbQueryPromise.then(function (data) {
var name = data && data.name ? data.name : 'anonymous';
var request = new Request(`sync?name=${name}`, init);
}).then(function (response) {
response.json().then(console.log.bind(console));