问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Webpack5 搭建一个简易的 React+TS 开发环境

发布网友 发布时间:2022-09-25 18:21

我来回答

1个回答

热心网友 时间:2023-09-20 02:40

之前入行前端系统学习过 Webpack,那时候的版本是 4,当时对 Webpack 的印象就是简单,但绝不易上手,尤其是应用到项目中,各种插件眼花缭乱,心都碎了一地。

现在 Webpack 升级到 5 了,里面内置了很多的插件,但是也还是做不到零配置。

对于这种脚手架,我理想的是,应该少配置,甚至做到零配置,用起来简单的就像在 HTML 中引入 JQuery 一样。

Vite 加油!

之前写过 React 配合 Webpack4 实现 hello world ,感兴趣的可以看看。

webpack.base.config.js 也可以叫 webpack.common.config.js 如果感觉名字太长的话,可以把 config 的字段去掉,即:

初始化文件,和安装依赖(后面会单独把 package.json 文件的关键信息放出来):

安装完这些,我们还需要一些 Webpack 插件,来辅助我们搭建项目,继续安装:

看下 package.json 的依赖,都是基于最新版:

public/tpl/index.html 的文件内容(主要是放置一个容器标签):

入口 index.js 文件(让页面显示一个 hello demo):

webpack.base.config.js 文件(公用的基础配置):

[name][chunkhash:8] 的用法参考 template-strings

dev 环境下的个性配置,开启了 source-map 便于调试,参见 devtool :

prod 环境下的个性配置:

Webpack4 我们清空目录使用的插件是 clean-webpack-plugin 现在 Webpack 已经内置了,参见: outputclean

package.json 的 scripts 字段新增内容如下:

最后:

浏览器打开 http://localhost:8080/ 即可看到:

还需要安装一些依赖:

依赖文件被更新为:

用 TS 需要有一个配置文件,package.json 在添加一个脚本命令:

运行 npm run ts:init 命令,项目根目录会出现 tsconfig.json 文件,因为项目会用到 jsx 语法和操作 DOM ,所以确认 tsconfig.json 的 lib 和 jsx 字段正确使用,例如。

webpack.base.config.js 需要做些改变,更改入口文件和 loader :

src/index.js 需要重命名为 src/index.tsx ,文件内容变更为:

npm run start 重启服务,浏览器完美运行:

当然事情可能不是那么的顺利,比如我就意外的收到了下面三个警告⚠️。

根据提示可以知道,项目的 code-splitting 和 performance 有带优化,code-splitting 是 Webpack4 的内容,参考链接 splitchunksplugin 性能的问题,可以参考 performance 来配置。

Webpack5 搭建一个简易的 React+TS 开发环境的教程就写完了,不知道你发现没 Webpack5 相对于 Webpack4 智能,又内置了好多社区插件,再给你举个例子🌰:

如果你使用过 Webpack 配置过项目,你一定知道

这三个处理静态资源的 loader。我这一说,你就该猜到了,没错 Webpack5 也给内置了。具体的使用参考

简单介绍下,我们找张 earth-girl.png 的图片来实战。

启用 loader 是使用 type 字段进行配置的, webpack.base.config.js 的 mole 需要新增规则

index.tsx 插入 img 标签:

这时候会编译错误,这是因为 TS 无法识别 png 文件,所以现在需要在项目根目录新建 custom.d.ts 文件内容为:

重启服务,打开浏览器,啦啦啦图片出来了:

今天就介绍到这里了,更多 Webpack 内容请去 Webpack 官网学习 https://webpack.js.org/

完~

热心网友 时间:2023-10-12 03:37

之前入行前端系统学习过 Webpack,那时候的版本是 4,当时对 Webpack 的印象就是简单,但绝不易上手,尤其是应用到项目中,各种插件眼花缭乱,心都碎了一地。

现在 Webpack 升级到 5 了,里面内置了很多的插件,但是也还是做不到零配置。

对于这种脚手架,我理想的是,应该少配置,甚至做到零配置,用起来简单的就像在 HTML 中引入 JQuery 一样。

Vite 加油!

之前写过 React 配合 Webpack4 实现 hello world ,感兴趣的可以看看。

webpack.base.config.js 也可以叫 webpack.common.config.js 如果感觉名字太长的话,可以把 config 的字段去掉,即:

初始化文件,和安装依赖(后面会单独把 package.json 文件的关键信息放出来):

安装完这些,我们还需要一些 Webpack 插件,来辅助我们搭建项目,继续安装:

看下 package.json 的依赖,都是基于最新版:

public/tpl/index.html 的文件内容(主要是放置一个容器标签):

入口 index.js 文件(让页面显示一个 hello demo):

webpack.base.config.js 文件(公用的基础配置):

[name][chunkhash:8] 的用法参考 template-strings

dev 环境下的个性配置,开启了 source-map 便于调试,参见 devtool :

prod 环境下的个性配置:

Webpack4 我们清空目录使用的插件是 clean-webpack-plugin 现在 Webpack 已经内置了,参见: outputclean

package.json 的 scripts 字段新增内容如下:

最后:

浏览器打开 http://localhost:8080/ 即可看到:

还需要安装一些依赖:

依赖文件被更新为:

用 TS 需要有一个配置文件,package.json 在添加一个脚本命令:

运行 npm run ts:init 命令,项目根目录会出现 tsconfig.json 文件,因为项目会用到 jsx 语法和操作 DOM ,所以确认 tsconfig.json 的 lib 和 jsx 字段正确使用,例如。

webpack.base.config.js 需要做些改变,更改入口文件和 loader :

src/index.js 需要重命名为 src/index.tsx ,文件内容变更为:

npm run start 重启服务,浏览器完美运行:

当然事情可能不是那么的顺利,比如我就意外的收到了下面三个警告⚠️。

根据提示可以知道,项目的 code-splitting 和 performance 有带优化,code-splitting 是 Webpack4 的内容,参考链接 splitchunksplugin 性能的问题,可以参考 performance 来配置。

Webpack5 搭建一个简易的 React+TS 开发环境的教程就写完了,不知道你发现没 Webpack5 相对于 Webpack4 智能,又内置了好多社区插件,再给你举个例子🌰:

如果你使用过 Webpack 配置过项目,你一定知道

这三个处理静态资源的 loader。我这一说,你就该猜到了,没错 Webpack5 也给内置了。具体的使用参考

简单介绍下,我们找张 earth-girl.png 的图片来实战。

启用 loader 是使用 type 字段进行配置的, webpack.base.config.js 的 mole 需要新增规则

index.tsx 插入 img 标签:

这时候会编译错误,这是因为 TS 无法识别 png 文件,所以现在需要在项目根目录新建 custom.d.ts 文件内容为:

重启服务,打开浏览器,啦啦啦图片出来了:

今天就介绍到这里了,更多 Webpack 内容请去 Webpack 官网学习 https://webpack.js.org/

完~

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
在筋骨堂治疗腰椎间盘突出一个疗程后已有好转,隔了三、四天又疼上了... 美的3⃣️匹柜机空调为什么不制热是什么原因? 小票打印机不出字的原因及解决方法如何解决小票打印机无法打印字的问题... 电脑打单打印机出不了小票超市收银台电脑键盘怎么用 交易房屋如何分类 城市规划用途分类该怎么做 规划用途的分类 ...打火机散件设备公司 值得信赖么 ?是不是《骗子》皮包公司? 希望给予... 哈尔滨农垦太阳神打火机散件厂是否骗人 有没有人知道网上那些打火机加工的广告是不是真是可靠?做打火机反销... 怎么在react里写ts 闭有哪些词语 食用油能决定菜的味道,怎样才是卫生科学的用油法? 抖音里关于异地恋的经典句子说说 小米手机的相机镜头磨损了可以修吗? 小米手机前置摄像头磨损能修吗 梦见公公和婆婆穿了双红鞋 以前装修时未改水电全是明管道,现在怎改造 北汽蓝谷(华为自动驾驶)将成为科技股龙头 北汽蓝谷定增55亿股,对股民到底是利好还是利空,我感觉要飞了 亚运会期间越秀公园要10块钱门票,请问11月29号去越秀公园要门票吗?? 荔湾湖公园门票多少钱? 我女儿7个半月打了流感疫苗引起发烧,去医院检查说白细胞低,是否白细胞低也和大疫苗有关系啊? 温度计被摔碎了,直接用手把温度计捡起来扔了但没有处理水银,还用手 舒淇是谁?和葛优葛存壮是什么干活关系 轻微汞中毒可以自愈吗,呕吐,昏睡,昨天 怎样才算轻度慢性汞中毒?能不能自愈.大概要几天才能自愈. 轻微水银中毒可自愈吗 wince5.0系统 笔记本电脑怎样无线上网 原车没有wifi可以加装吗 react-ts-腾讯云上传功能使用步骤 react小技巧-ts中的ReactDOM.render返回void 前端框架功能最弱的部件 狐狸喜欢吃什么 狐狸一般吃什么用英语介绍? 再见了我的青春句子 怀念青春的唯美语录大全 为什么现在大多数卖家越被催货,发货就越慢?甚至有些还没回复 流苏贝母兰的介绍 这是铁皮石斛吗?野生的, 苹果手机怎么改第二次 宝宝可以略过学爬阶段吗?学爬对宝宝有哪些好处? 苹果手机怎么修改第二次? 孩子跳过爬行直接学走,对孩子的危害有哪些呢? 苹果手机怎么改第二次 让宝宝学会爬行,该如何教呢? 有哪3点区别是不爬就走和先爬后走的宝宝,之间会产生的? 苹果手机怎么修改第二次 苹果手机怎么修改第二次 苹果手机第二次怎么改? 苹果手机怎么改第二次