我有一个Javascript Web应用程序,用户可以让工作人员花费一些时间进行数据转置。我使用blob创建worker,如下面的代码所示。
我在变量中有我的worker函数:
var workerCode = function(){
var transposeRules = function(...){
//Heavy processing code here
}
onmessage = function(event) {
transposeRules(...);
};
}
我使用该函数创建一个blob,并将blobURL传递给一个新的worker,如下所示:
var blob = new Blob(['(' + workerCode.toString() + ')();'], {type: 'text/javascript'});
var blobURL = window.URL.createObjectURL(blob);
var worker = new Worker(blobURL); // Create the worker as usual
请注意,在非开发环境中,所有代码都会缩小。
它适用于Chrome,Firefox,甚至适用于MOST用户的IE11,但是该应用程序的一个用户(实际上是其中一个主要......)会出现以下错误:
SCRIPT0: expected ';'
Failed to open blob:B65071CD-93A4-4340-A74B-723F9D9E1598
我不知道这是什么原因。我见过类似的帖子,有人预料到这一点&#39 ;;'错误,但他在函数中有一个狡猾的角色 - 我复制了blob代码并且看不出它有什么问题 - 此外,它适用于99%的用户,除了一个用户。
有人可以建议如何解决这个问题吗?也许它是IE11的一些设置,我不知道或其他什么?谢谢!