如何通过npm包中的filepath引用资产? (应用程序:webworker)

我已经编写并发布了一个vanilla JS节点包,下面是package.json:

{ "name": "...", "description": "...", "version": "1.0.0", "types": "./index.d.ts", "main": "./dist/bundle.js", ... } 

我也使用webpack,以下webpack.config.js

 const path = require('path'); const WebpackShellPlugin = require('webpack-shell-plugin'); module.exports = { entry: './src/js/main.js', output: { path: path.resolve(__dirname, 'dist'), filename: 'bundle.js', library: '', libraryTarget: 'commonjs-module' }, plugins: [ new WebpackShellPlugin({onBuildStart:['rm -r dist', 'mkdir dist']}) ] }; 

最后,我使用下面的方式在我的库中使用worker-loader:

 var MyWorker = require('worker-loader!./workers/worker.js'); ... var worker = new MyWorker(); 

当我运行webpack的时候,它没有问题地编译,并且在dist/放置bundle.jsc6...[hash code].worker.js 。 所以我这样发布软件包。

现在,当我尝试将库包含在不同的typescript / babel / es6项目中,并使用import MyClass from 'packagename' ,一切正常。直到我们到达库中的行:

 var worker = new MyWorker(); 

在这一点上,浏览器提供了一个404错误,它找不到localhost:8080/c6...[hash code].worker.js

有谁知道如何处理这个? 我已经确认文件c6...[hash code].worker.js位于node_modules/packagename/dist