Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在angular Worker中导入模块?_Javascript_Angular_Ionic Framework_Ionic3_Web Worker - Fatal编程技术网

Javascript 在angular Worker中导入模块?

Javascript 在angular Worker中导入模块?,javascript,angular,ionic-framework,ionic3,web-worker,Javascript,Angular,Ionic Framework,Ionic3,Web Worker,我们正在开发一种离子应用。我创建了一个服务(.ts)并导入了一个geo json pathfinder。初始化这个探路者需要10-20秒,所以我应该把它外包给一个工人(.js) 在my worker.js的顶部返回一个错误: SyntaxError:导入声明只能出现在 模块 我怎么处理呢?我能像这样把这个探路者发送到我的ui线程吗 let pathfinder : Pathfinder = new Pathfinder(geojson); self.postMessage({obj: pathf

我们正在开发一种离子应用。我创建了一个服务(.ts)并导入了一个geo json pathfinder。初始化这个探路者需要10-20秒,所以我应该把它外包给一个工人(.js)

在my worker.js的顶部返回一个错误:

SyntaxError:导入声明只能出现在 模块

我怎么处理呢?我能像这样把这个探路者发送到我的ui线程吗

let pathfinder : Pathfinder = new Pathfinder(geojson);
self.postMessage({obj: pathfinder})
有两个问题

  • 很可能,您不能像那样通过路径查找器。请仔细阅读文档。您将看到,您应该只传递图形预处理的结果,你可以看到它们是如何获得的

    const preprocessedGraph = preprocess(graph, options);
    
    你需要把它弄得乱七八糟,让它做你需要的事情

  • 要将ES6模块导入web worker,请使用第二个参数:

    const myWorker = new Worker("worker.js", "module");
    
  • const myWorker = new Worker("worker.js", "module");