vue2.x项目没有vue.config.js时,web worker使用
vue及插件版本信息
vue:2.7.14,webpack 3.6.0构建项目
情况描述
在vue中使用new Worker(‘./worker.js’)原生方法,引入woker.js子线程时,无法正常读取引入。于是乎就百度了一下,网上vue使用web worker的步骤。
1.安装使用 worker-loader
// 安装依赖包
npm install worker-loader -D
2.vue.config.js 完整配置
module.exports = {
chainWebpack(config) {
// set worker-loader
config.module
.rule(‘worker’)
.test(/.worker.js$/)
.use(‘worker-loader’)
.loader(‘worker-loader’)
.end();
},
parallel: false
}
3.将子线程js改成,woker.js后缀的,如demo.woker.js
import MyWorker from ‘./demo.worker.js’
new MyWorker()
然后就能愉快的使用了,但是由于我的项目中没有vue.config.js
,于是乎我就完美的卡死在了第二步。
为什么没有vue.config.js
如果你vue2.x项目看多了,你会发vue中的配置文件有两种类型。
1.根目录下有config文件夹,且里面有index.js文件
2.根目录下有vue.config.js文件
那么问题就来了,为什么同为vue2.x的项目,却有着两种不同的配置文件呢?
这个问题之前一直困扰了我很久,刚开始以为是vue版本问题,最近才真正弄明白。
其实真正的原因是vue项目的构建访视不同,从而导致的配置文件的不同
1.vue init webpack 项目名称
使用该命令构建vue项目会出现config/index.js
配置文件
2.vue create 项目名称
使用该命令构建vue项目会出现vue.config.js
配置文件
解决方式
我在网上找了特别多的文章,基本上都需要配置vue.config.js文件。
在我一天的不懈努力下(与chatGPT对线
)。终于在失败了n次后,找到了正确的解决方式
1.安装
worker-loader的0.8.8
版本
注意必须是低版本的,否则后面对webpack的配置会报错,如果你已经安装了高版本的,建议先卸载
npm install worker-loader@0.0.8 --save-dev
2.在
webpack.base.conf.js
文件中添加如下配置
module: {
rules: [
{
test: /\.worker\.js$/,
use: { loader: 'worker-loader' }
}
]
然后重跑一下项目,就能愉快的使用web worker了!!!
更多推荐
所有评论(0)