WebPack实战 WebPack打包Vue项目

article/2025/9/24 13:27:33

文章目录

  • 前言
  • 一、使用webpack来进行vue-cli模块化开发
  • 二、Webpack配置区分开发环境和生产环境
  • 三、vue项目打包
    • 3.1、config—index.js文件
    • 3.2、build—webpack.prod.conf.js 文件
    • 3.3、element ui 字体文件加载出错
    • 3.4、路由跳转出现js访问404问题
  • 四、关闭Webpack的debug模式
  • 五、Vue项目打包发布后,使浏览器WebPack中无法查看源码

前言

本篇博客是关于Webpack打包vue的配置以及一些问题解决整理,若文章中出现相关问题,请指出!

所有博客文件目录索引:博客目录索引(持续更新)

一、使用webpack来进行vue-cli模块化开发

使用vue-cli创建项目,webpack打包

# 1、全局安装webpack
npm install webpack -g# 2、安装vue-cli脚手架工具    (卸载旧版本: npm uninstall vue-cli -g)
npm install -g @vue/cli-init# 3、使用webpack来进行初始化项目 (vue2demo指的是初始化的项目名称)
# 我的vue工具目录在D:\software\nvm_1.1.7\installnpm\node_modules\@vue\cli-init\node_modules\.bin,在你对应的安装目录下,要自己去找一下,不然很容易出现找不到该命令
vue init webpack vue2demo
# 配置信息
? Project name vue2demo
? Project description A Vue.js project
? Author changlu
? Vue build standalone
? Install vue-router? Yes
? Use ESLint to lint your code? Yes
? Pick an ESLint preset Standard
? Set up unit tests No
? Setup e2e tests with Nightwatch? No
? Should we run `npm install` for you after the project has been created? (recommended) npmvue-cli · Generated "vue2demo".# 4、进入创建的项目目录
npm install # 安装依赖

二、Webpack配置区分开发环境和生产环境

Webpack配置区分开发环境和生产环境

1、安装cross-envnpm install cross-env

我们使用webpack来打包vue-cli的话就会有如下的模块:

image-20211202151136635

2、添加指定的全局变量

我们只需要看config目录下的两个js文件即可,对应是开发环境、生产环境

module.exports = merge(prodEnv, {NODE_ENV: '"development"',BASE_URL: '"http://localhost:8081"'
})

3、使用

若是想要全局直接获取到则通过如下:

# 示例:process.env.NODE_ENV
process.env.xxxx

三、vue项目打包

完整vue打包报错情况解决方案:vue项目打包 打包运行报错以及Element UI字体图标不显示问题解决详细过程

3.1、config—index.js文件

找到build下面的 assetsPublicPath: ‘/’,然后修改为 assetsPublicPath: ‘./’(即“/”前加点)

image-20211202161958269

小提示:
上面这步修改完可能有些直接npm run build打包后项目都正常了,可跳过下面第二步,如果打包后运行有类似下面的报错,需进行下面第二步的配置。

3.2、build—webpack.prod.conf.js 文件

按上面的位置找到webpack.prod.conf.js文件,在里面的output添加参数:

publicPath: './'

image-20220414204124981

3.3、element ui 字体文件加载出错

image-20220414204148677

如果没有引入element ui字体图标的话,可能到这步就重新打包就正常了,如果引入了element
ui的话可能还会出现如下的问题(两个字体文件加载不到):

问题原因:

查看 /build/webpack.base.conf.js 文件可以发现,woff 或 ttf 这些字体会经由 url-loader
处理后在 static/fonts 目录下生成相应的文件。

image-20220414204211725

也就是说实际应该通过 /static/fonts/** 路径来获取字体图标,而实际却是请求
/static/css/static/fonts/**,自然报 404 错误。

image-20220414204313333

解决方案

打开 build/utils.js 文件,在如下位置添加 publicPath: '…/…/'

image-20220414204352163

之后运行npm run dev即可


3.4、路由跳转出现js访问404问题

将history模式改为hash模式即可解决!


四、关闭Webpack的debug模式

请问如何配置生产环境的webpack 才可以关闭Vue Devtools。

本质就是将Vue的debug关闭,加入代码到main.js中:

const isDebug_mode = process.env.NODE_ENV !== 'production';
Vue.config.debug = isDebug_mode;
Vue.config.devtools = isDebug_mode;
Vue.config.productionTip = isDebug_mode;

或者:

image-20220417220821819

五、Vue项目打包发布后,使浏览器WebPack中无法查看源码

修改config/index.js中的 build对象productionSourceMap: false即可隐藏源码。

我们在打包时就能够进行关闭。

image-20220417221629353

实际上线之后:此时就看不到了

我是长路,感谢你的耐心阅读。如有问题请指出,我会积极采纳!
欢迎关注我的公众号【长路Java】,分享Java学习文章及相关资料
Q群:851968786 我们可以一起探讨学习
注明:转载可,需要附带上文章链接


http://chatgpt.dhexx.cn/article/yFKuayE3.shtml

相关文章

vscode使用webpack打包

vscode使用webpack打包 下载webpack初始化项目打包 .js文件打包.js.csswebpack全局安装与局部安装 webpack作用就是将多个不同的.js文件或者.css文件打包为一个文件,减少请求量 有大佬的帖子写的很详细,各种资源的打包方式都有: https://blog.csdn.net/chen4565/article/detai…

webpack打包html

webpack打包html 1.生产环境与开发环境的区别2.打包html3.安装html插件4.在配置文件中引入我们的插件5.在我们的配置文件的最下方写入html配置6.打包完成生成一个index文件7.在文件中写入其他内容8.打包后的内容展示9.改变title的内容10.打包后的效果展示11.打包多个页面12.压缩…

webpack打包json文件

项目里新增了json文件,webpack报错如下: webpack本身是支持json文件读取的,这个报错是babel-loader在报错,也就是说,打包的时候,babel-loader去解析了json文件。babel是js的编译工具,可以把js、…

React 使用webpack打包

一、项目创建 1、新建一个项目文件夹,打开终端,切换到到项目目录下: npm init -y 这时候使用webstorm等高级的编辑器打开项目执行下面步骤效果会更直观。 2、新建一个文件夹public,在文件夹内创建index.html文件,添加…

webpack打包工具的基本使用

目录 一、webpack是什么? 二、webpack的基本使用 1、初始化项目 2、安装webpack及其依赖 3、使用 3.1 配置webpack: 3.2 在package.js文件中添加打包命令 3.3 执行打包命令 三、webpack相关插件 插件一:HtmlWebpackPlugin 插件二&a…

webpack打包优化

目录 概述 打包优化-路由懒加载 问题 那什么是路由懒加载呢? 路由懒加载中的魔法注释 小结 打包优化-包大小分析 包大小分析 打包优化-去掉console-log webpack配置排除打包-整体分析 回顾 提问 思路 webpack配置排除打包-打包瘦身 目标 使用方式 webpack配置…

webpack打包工具的使用方法

目录 一、webpack打包工具 1、简介 2.npm补充 3.webpack一系列的步骤 1.npm init -y初始化文件生成package.json文件 2.npm install jquery -S安装jquery包, 3.卸载包的时候,用npm uninstall jquery -S(如果需要卸载的话) 4.在根目录上新建src文…

webpack 打包chunk

chunk的含义以及出现的情况 webpack特定术语在内部用于管理捆绑过程,输出束(bundle)由块组成。 是webpack 根据功能拆分出来的代码片段,包含三种情况 官方: 1.入口起点:使用entry配置手动地分离代码 **2.防止重复…

webpack打包报错

在执行npm run build对项目进行打包的时候遇到webpack打包报错的问题 在网上找到各种方法去解决,什么node版本不兼容啊重装node啊,什么saas没装好python环境啊,webpack版本兼容问题啊!总之各种说法都看着去尝试解决了,…

webpack打包css

webpack打包 1.打包css2.打包逻辑1-1.webpack打包css逻辑 3.打包css4.打包成独立的css文件5.添加样式前缀6.格式校验7.压缩css8.我们为什么要用这个打包工具呢9.webpack的打包顺序10.总结 1.打包css 2.打包逻辑 1-1.webpack打包css逻辑 非js文件打包 需要对应的loadercss-loa…

初识webpack打包

初识webpack打包,小白入门 前言: webpack是一款基于node的构建工具,其中一大特色就是打包 因为现在前端已经工程化开发,写的代码已经不能直接在浏览器上运行了 这时候webpack会帮你把代码进行编译,打包成浏览器识别的…

webpack打包分析

分析一:打包的时间分析 如果我们希望看到每一个loader、每一个Plugin消耗的打包时间,可以借助于一个插件:speed-measure-webpack-plugin注意:该插件在最新的webpack版本中存在一些兼容性的问题(和部分Plugin不兼容&am…

如何使用Webpack打包

简单的说了一下webpack是干嘛的,和webpack如何安装,如何进行打包,步骤很详细,感兴趣的同学可以试着操作一下。 文章目录 1、webpacks是什么?2、Webpack安装3、初始化项目4、使用webpack进行JS打包5、使用webpack进行CS…

webpack打包优化配置

文章目录 前言不进行任何打包配置代码分离splitChunkruntimeChunk动态导入 css文件处理css文件提取css文件压缩css实现Tree Shaking js实现Tree shakingTerserscope Hoisting打包优化没效果打包界面显示分析总结 前言 之前使用webpack进行项目搭建配置时,都是操作一…

webpack打包路径更改_webpack打包教程

创建package.json文件 命令:npm init 安装webpack npm install --save-dev webpack npm install --save-dev webpack-cli 全局安装: npm install --global webpack webpack-cli 打包 默认entry入口 src/index.js 默认output出口 dist/main.js 打包模式: webpack --mode deve…

Vue基础知识总结 9:vue webpack打包原理

🏆作者简介:哪吒,CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家💪,专注Java硬核干货分享,立志做到Java赛道全网Top N。 🏆本文收录于,Java基础教程系列…

webpack 打包流程

流程梳理 在开始之前我们先对于整个打包流程进行一次梳理。 这里仅仅是一个全流程的梳理,现在你没有必要非常详细的去思考每一个步骤发生了什么,我们会在接下来的步骤中去一步一步带你串联它们。 整体我们将会从上边5个方面来分析Webpack打包流程: 初…

Webpack打包

webpack【依赖node环境】 什么是webpack? 从本质上将,webpack是一个现代的JavaScript应用的静态模板打包工具。 前端模块化: 前端模块化是指,通过将前端代码根据一定的规则解耦封装成几个代码文件(模块)&…

使用webpack打包vue项目

使用webpack打包vue项目 安装webpack工具,安装方式有两种:全局安装(命令:npm install -g webpack webpack-cli)以及安装在项目中,这里使用第二种: //在项目中安装,这里的-D表示运用到…

Idea 2017.3.+永久破解方法

一、下载Intellij IDEA2017.3.5x64旗舰版 去官网下载此处不赘述 二、下载破解jar包 链接在此http://idea.lanyus.com/jar/JetbrainsCrack-2.7-release-str.jar 三、打开安装好的IDEA路径下的bin目录 将下载好的jar包复制进来 例如 四、修改bin目录下的两个文件 idea.exe…