Vue-pdf打包线上控制台work.js404,pdf线上无法预览,本地正常
vue
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
项目地址:https://gitcode.com/gh_mirrors/vu/vue
·
引言
维护公司之前的一个项目,使用了vue-pdf插件,本地效果正常,打包线上之后控制台提示一个work.js资源引用404
问题已解决,下面介绍埋坑的几个要点位置
.vue组件内部是这样引入的
tempalte模板部分:
<tempalte>
<pdf :src="pdfUrl" ref="pdf"></pdf>
</tempalte>
script部分:
<script>
import pdf from 'vue-pdf';
export default {
components: {
pdf,
},
.....
}
</script>
这样使用在本地是没有问题的,可以预览,但是打包后预览404,我们需要改动一下vue-pdf插件的配置
首先在你的node_modules依赖里,找到如下文件夹的文件

更改里面的内容,

主要更改的地方有两处,第一处框起来的部分是新增内容,第二处框起来的是修改部分,把它注释掉就行了。
然后在vue项目的配置文件config.js添加内部webpack配置
chainWebpack: (config) => {
....
// 处理vue-pdf打包文件404
config.module
.rule('worker')
.test(/\.worker\.js$/)
.use('worker-loader').loader('worker-loader')
.options({
inline: true,
fallback: false,
}).end();
}
,这样打包的时候,你的vuepdf就不会打包workjs404了。
当然,还有其它方式,网上看到有的网友博客中提到work.js404的原因是文件路径问题,将此文件放入webapp项目文件夹的static静态文件夹目录下面即可,不过我没有尝试过,所以不是很清楚,这里的方式是我已经在实际项目中处理解决了的,希望对你有帮助.
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:2 个月前 )
9e887079
[skip ci] 1 年前
73486cb5
* chore: fix link broken
Signed-off-by: snoppy <michaleli@foxmail.com>
* Update packages/template-compiler/README.md [skip ci]
---------
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 1 年前
新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。
更多推荐


所有评论(0)