使用工人装载机VUE-CLI和的WebPack
问题描述:
我试着去建立工人装载机VUE-CLI的WebPack安装,可提供以下文件结构的构建/配置:使用工人装载机VUE-CLI和的WebPack
-build
--vue-loader.conf.js
--webpack.base.conf.js
--other build files...
-config
--index.js
--dev.env.js
--other config files...
我再装工装载机与
npm install worker-loader --save-dev
于是我试图要求我worker.js与
require('worker-loader!my-worker.js');
但它不是
module: {
rules: [
{
test: /\.(js|vue)$/,
loader: 'eslint-loader',
enforce: 'pre',
include: [resolve('src'), resolve('test')],
options: {
formatter: require('eslint-friendly-formatter')
}
},
{
test: /\.vue$/,
loader: 'vue-loader',
options: vueLoaderConfig
},
{
test: /\.js$/,
loader: 'babel-loader',
include: [resolve('src'), resolve('test')]
},
{
test: /\worker\.js$/,
loader: 'worker-loader',
include: [resolve('src'), resolve('test')]
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
},
{
test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
}
}
]
}
但我的工人就只能由阅读:由被用来作为默认VUE-CLI的WebPack版本
于是我尝试更新具有以下配置webpack.base.conf.js通天装babel并作为一个常规的js文件导入,而worker-loader并没有缝隙执行任何操作。
那么如何正确配置?
答
Woops,我找到了我的错误。
我试图加载工人装载机:
import myWorker from 'worker-loader?./myworker'
let worker = new Worker(myWorker);
因此,解决办法是简单地使用:
import myWorker from 'worker-loader?./myworker'
let worker = new myWorker;
所以现在它的工作原理:-)
你确定它是'worker-loader?./ myworker'而不是'worker-loader!./myworker'?你能发布你的工作文件的结构吗? – Alex
在npm install worker-loader之后,可以直接使用它来清除任何conf。防爆。 '从'worker-loader?name = workers/[hash:7] .worker.js!。/ noxfer.worker''导入NoxferWorker – Steffan