首页 > Web开发 > 详细

webpack4.x基本配置

时间:2019-09-07 20:39:50      阅读:119      评论:0      收藏:0      [点我收藏+]

在学习vue的时候,需要进行打包操作,视频看的是webpack3的踩了好多坑,所以在记录一下,方便后续复习。有错误请指出。

  1. 新建项目文件
    技术分享图片
  2. 在项目文件下 执行npm init -y,进行初始化,生成package.json文件
  3. 可以安装淘宝镜像,使用cnpm下载的会快点   npm install -g cnpm --registry=https://registry.npm.taobao.org
  4. cnpm install -d  可以看到当前项目文件下面多了node_modules文件夹
  5. 尝试打包   webpack ./src/main.js -o ./dist/bundle.js --mode development 此时会提示是否要安装webpack-cli,也可以使用cnpm install webpack-cli -g 安装   g-表示全局安装,d-表示本地安装

技术分享图片

技术分享图片

 可使用webpack -v查看当前版本号。

接下来进行打包,使用 webpack ./src/main.js -o ./dist/bundle.js --mode development 语句,打包成功。可以看到多了一个dist文件夹,但打包出来的文件是设置的文件名bundle.js

技术分享图片

 

如果有引入jquery,还需要手动安装jquery。npm install jquery -D

技术分享图片

 测试:在html文件中引入打包的js文件,在本地运行可以看到效果。

 注意:这里每修改一次都要重新打包。

技术分享图片

出入口文件配置

   新建webpack.config.js文件,进行基本配置。指定完出入口之后,可以直接使用“webpack” 进行打包,但修改后还是需要手动更新。

技术分享图片

接下来设置项目热部署,使用webpack-dev-server实现自动打包编译功能

 1. 运行 npm i webpack-dev-server -D 把这个工具安装到项目的本地开发依赖
 2. 安装完毕后,这个工具的用法和 webpack 命令的用法,完全一样
 3. 由于,我们是在项目中,本地安装的 webpack-dev-server , 所以,无法把它当作 脚本命令,在powershell 终端中直接运行;(只有那些 安装到 全局 -g 的工具,才能在 终端中正常执行)
 4. 注意: webpack-dev-server 这个工具,如果想要正常运行,要求,在本地项目中,必须安装 webpack

这里需要在package.json文件的script项里定义"dev":"webpack-dev-server" 代表我执行npm run dev时就执行这句话。执行npm run dev,报错了。。。。技术分享图片

本地安装webpack和webpack-cli。安装完packed.json文件里会显示相关的版本信息。如果本地安装完之后还是不行可以试试全局安装

npm install webpack-dev-server -g

技术分享图片

技术分享图片

 5. webpack-dev-server 帮我们打包生成的 bundle.js 文件,并没有存放到实际的物理磁盘上;而是直接托管到了 电脑的内存中,所以我们在项目根目录中,根本找不到这个打包好的bundle.js;
 6. webpack-dev-server 把打包好的文件,以一种虚拟的形式托管到了项目的根目录中,虽然我们看不到它,但是可以认为和dist,src,node_modules 平级,有一个看不见的文件,叫做bundle.js
 这里遇到一个问题,我已经安装过了webpack,但是还是提示Error: Cannot find module ‘webpack‘。原因可能是webpack没有本地安装,重新安装一下就好了。

技术分享图片

执行cnpm install webpack webpack-cli -D,然后npm run dev ,成功!现在可以点击端口号打开项目的页面,但是样式还是没有变。原因是刚开始在index.html里写死了<script src="../dist/bundle.js"></script>。改成这样就可以自动打包编译并且实时刷新浏览器<script src="/bundle.js"></script>

技术分享图片

在package.json里设置执行npm run dev 时自动打开页面,设置端口号,设置内容的根路径,热更新(只更新了更改过的代码,相当于补丁。同时可以实现浏览器的无刷新重载)
技术分享图片

 

 配置 dev-server 命令参数的第二种形式。webpack4.x不进行plugins配置也可以成功

技术分享图片 技术分享图片

 

 

html-webpack-plugin插件配置启动页面

 

技术分享图片

技术分享图片

webpack4.x基本配置

原文:https://www.cnblogs.com/sweetC/p/11480286.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!