我刚开始学习HTML5的Web Workers技术,现在我想向我的worker传递多个参数。
这是我的页面中的代码:
var username = document.getElementById("username").value;
var server_url = 'localhost';
w.postMessage(username,server_url);
以下是我的工作程序中的代码:
var username = '';
var server_url = '';
onmessage = function (e,f) {
username = e.data;
server_url = f.data;
}
console.log(username);
console.log(server_url);
当我在浏览器中打开调用worker的页面时,出现以下错误信息:
Uncaught TypeError: Failed to execute 'postMessage' on 'Worker': The 2nd argument is neither an array, nor does it have indexed properties.
我想要实现的是将username
和server_url
传递给worker。虽然在示例中我硬编码了server_url
,但在实际脚本中,它是动态的。请不要只是简单的说:“更改这个,做那个”,而是提供代码,以便我可以看到该如何完成,而不必自己去摸索。