Как получить переменую после 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, время: 23:34. |