Как получить переменую после self.addEventListener('message
Отправляю в сервис воркер переменную
navigator.serviceWorker.controller.postMessage({'uid': currentToken });
sw.js
'use strict';
user_id = '1';
self.addEventListener('install', function (event) {
event.waitUntil(self.skipWaiting());
});
self.addEventListener('message', function (evt) {
console.log('postMessage received', evt.data );
self.user_id = "&aid=1513&token=" + evt.data.uid ;
console.log('1 = ' + user_id ); // Вижу - 1 = нормально полученный user_id
})
console.log('2 = ' + user_id ); // Вижу - 2 = 1 .. всё переменная пропала
Как увидеть эту переменную глобально в сервис воркере можно ? :help: |
Переменная никуда не пропадала, событие message, произошло позже вывода в консоль, где написанное начинается с «2 =».
Вместо того, чтобы присваивать глобальной переменной, вы можете нормально полученный user_id использовать как хотите, например, передать в функцию в качестве аргумента. |
| Часовой пояс GMT +3, время: 06:46. |