我已经坚持了两天,并没有找到这个问题的答案。
在我的React,Redux应用程序中,我使用immutable.js
进行所有对象操作。我需要一个网络工作者来做一些计算&将操作发回middleware
以进行调度。
使用此语法会出错:
Worker.js
self.importScripts( "../../node_modules/immutable/dist/immutable.js" );
浏览器报告错误:NetworkError: Failed to load worker script at ../../node_modules/immutable/dist/immutable.js (nsresult = 0x804b001d)
如何将immutable.js
导入网络工作者文件&我该如何使用它?显然,以下es6
import
语法不起作用。
不起作用:
import { Map, List } from "immutable";
答案 0 :(得分:0)
importScripts()
在浏览器的上下文中从外部服务导入脚本文件 - 浏览器无法访问节点模块,因此您无法在那里导入node_modules。
而是尝试从CDN导入Immutable,例如CDNJS。
self.importScripts( "https://cdnjs.cloudflare.com/ajax/libs/immutable/3.8.1/immutable.min.js" );
var map1 = Immutable.Map({a:1, b:2, c:3});
var map2 = map1.set('b', 50);
map1.get('b'); // 2
map2.get('b'); // 50