Tôi đã cố gắng sử dụng importScripts để tải một tệp JavaScript thứ hai vào công nhân web của tôi, nhưng mặc dù không có lỗi xảy ra nhưng nó không hoạt động. Tôi thu hẹp vấn đề xuống để tình trạng này rất đơn giản:importScripts (web workers)
Trong tập tin HTML chính:
<script>
var w = new Worker("script1.js");
w.addEventListener("message", function(e){
alert(e.data);
})
w.postMessage();
</script>
Trong script1.js:
self.addEventListener("message", function(e){
var a = 5;
importScripts("script2.js");
self.postMessage(a);
})
Trong script2.js:
a = 6
Tôi muốn thấy một hộp thoại hiển thị 6, bởi vì đã được thay đổi từ 5 đến 6 bằng cách nhập tập lệnh script2.js, nhưng hộp thoại hiển thị 5. Tôi đang thiếu gì ở đây?
Could dòng sau importScripts ("script2" .js "); -> self.postMessage (a), không còn đề cập đến bản thân vì bạn đã nhập khẩu? –