前端项目练习(练习-005-webpack-03)

学习前,首先,创建一个web-005项目,内容和web-004一样。(注意将package.json中的name改为web-005)

前面的代码中,打包工作已经基本完成了,下面开始在本地启动项目。这里需要用到webpack-dev-server插件 (简写: dev-server)。这个插件可用于快速开发应用程序,相当于webpack的开发服务器。它会自动监听代码变化,自动打包构建,自动更新刷新浏览器。

它不会产生dist文件,将打包结果暂时存在内存中,内部的http-sever访问这些文件并读取数据,发送给浏览器。

它会减少磁盘的读取,提高构建效率。

首先,安装webapck-dev-server :

bash 复制代码
npm install webpack-dev-server --save-dev

安装完成后,配置webpack.config.js,在里面加一个 devServer 配置,

其中,open:true 表示启动成功后,自动打开浏览器,port表示端口,compress:true 表示压缩。

接下来配置 package.json ,在scripts 中增加一条dev指令:

这样运行 npm run dev 就可以运行项目了:

不用手动访问,会自动在浏览器里面打开页面:

字体显示红色说明css引入没问题,打开浏览器控制台,看到打印的日志:

说明js文件引入没有问题。

在项目启动完后,不重启项目的情况下,修改js文件和css文件,可以看到项目可以自动刷新并执行最新的代码。

不过目前的项目不支持html热修改。需要新增一个loader,html-loader,首先执行安装:

bash 复制代码
npm install --save-dev html-loader

下一步,在js文件中,引入html文件:

然后在webpack.config.js中配置html-loader:

执行npm run dev重新启动项目,修改三个文件代码,可以看到,在不重启的情形下,三个文件代码修改的效果都可以实时看到。

相关推荐
全栈老石4 小时前
手写一个无限画布 #1:坐标系的谎言
前端·canvas
XW01059995 小时前
4-11判断素数
前端·python·算法·素数
J2虾虾5 小时前
Spring Boot中使用@Scheduled做定时任务
java·前端·spring boot
Heo5 小时前
深入React19任务调度器Scheduler
前端·javascript·面试
一枚前端小姐姐5 小时前
Vue3 + Pinia 状态管理,从入门到模块化
前端·vue.js
折七5 小时前
NestJS 用了两年,我换了这个
typescript·node.js·nestjs
用户14436183400975 小时前
你不知道的JS上-(九)
前端·javascript
yuki_uix5 小时前
为什么我的 Auth Token 藏在了 Network 面板的 Doc 里?
前端·python·debug
不会敲代码15 小时前
从原子CSS到TailwindCSS:现代前端样式解决方案全解析
前端·css·react.js
Mr_li5 小时前
Nestjs 中 Provider 的注入方式扫盲,解决你的选择困难症
node.js