VIKINGVyksa
@VIKINGVyksa
front-end developer

Worker через Blob, не работает как надо?

Запускаю вот такой вот код
if(!!window.Worker){
			if(!!window.Blob){
				var bb = new Blob(["self.addEventListener('message',function(e){self.postMessage(e.data);},false);"]);

				var blobURL = window.URL.createObjectURL(bb);
				console.log(blobURL);

				var worker = new Worker(blobURL[0]);
				console.log(worker);

				worker.addEventListener('message',function(e){
					console.log("worker message : "+e.data);
				},false);

				worker.postMessage('Hello, worker!'); // Start the worker.
			}else{
				// fallback
			}
		}else{
			// fallback
		}

Ошибок нету, всё выводит,но не работает как надо)) По идее должен вывести worker message : Hello, worker!
Скорей свего где-то косяк,но сейчас я его не вижу)
  • Вопрос задан
  • 157 просмотров
Решения вопроса 1
@Panya
У вас ошибка в строке:
var worker = new Worker(blobURL[0]);
вы передаете только первый символ урла блоба. А надо передавать весь урл. То есть писать так:
var worker = new Worker(blobURL);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
IonDen
@IonDen
JavaScript developer. IonDen.com
Так воркер может быть только внешним файлом. Тут эмуляция не поможет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
24 нояб. 2024, в 01:35
5000 руб./за проект
24 нояб. 2024, в 01:24
500 руб./за проект
24 нояб. 2024, в 00:04
5000 руб./за проект