Webpack和Vite简单使用

news/2025/2/23 15:31:01

目录

WebPack

介绍

基础使用

初始化使用

webpack.config.js%E6%96%87%E4%BB%B6-toc" style="margin-left:80px;"> webpack.config.js文件

webpack%E5%BC%80%E5%8F%91%E6%9C%8D%E5%8A%A1%E5%99%A8-toc" style="margin-left:80px;">webpack开发服务器

vite-toc" style="margin-left:0px;">vite

介绍

使用

vite%E5%88%9B%E5%BB%BAvue%E6%A1%86%E6%9E%B6%E9%A1%B9%E7%9B%AE-toc" style="margin-left:0px;">使用vite创建vue框架项目


WebPack

介绍

当我们习惯了在node中编写代码的方式后,在回到前端编写html、css、js这些东西会感觉到各种的不便。比如: 不能放心的使用模块化规范(浏览器兼容性问题) 、即使可以使用模块化规范也会面临模块过多时的加载问题。
我们就迫切的希望有一款工具可以对代码进行打包,将多个模块打包成一个文件。这样一来即解决了兼容性问题,又解决了模块过多的问题。
构建工具就起到这样一个作用,通过构建工具可以将使用ESM规范编写的代码转换为旧的JS语法,这样可以使得所有的浏览器都可以支持代码。

基础使用

初始化使用

新建一个src文件夹

进入该目录中初始化node项目

npm init -y

 

可以看到src目录中多了package.json文件

安装webpack   -D表示开发环境

 npm add -D webpack webpack-cli

新建一个js文件,进行打包尝试

 

 可以看到目录中新增了一个dist目录,里面就是已经打包好的文件

 再书写一个home.js文件,添加方法并且暴露

 要想使用es6的模块导入需要在package.json文件中添加配置:

 引入并调用

重新打包

再查看dist中文件打包后的变化

发现代码全部被打包压缩为了一行

执行该打包后的文件查看效果

webpack.config.js%E6%96%87%E4%BB%B6"> webpack.config.js文件

 entry : 用来指定打包时的主文件 默认./src/index.js

新建hay.js文件

 重新打包测试:

 

 entry还可以通过传入数组进行指定多个文件进行打包

再新建ha.js文件

 

打包查看dist目录文件

 entry还可以传入对象进行多文件打包

 

 

 output:配置打包后的地址

 

plugin插件

安装插件

npm add -D html-webpack-plugin

 

重新打包

 

重新编译后会自动生成html文件 

webpack%E5%BC%80%E5%8F%91%E6%9C%8D%E5%8A%A1%E5%99%A8">webpack开发服务器

在使用webpack中,每次编辑代码后需要手动进行构建,可以直接使用webpack自带的监听命令来进行监听构建

调整index.js文件代码

构建监控 

 npx webpack --watch  

 

 实际开发中可以通过搭建webpack服务器来进行构建监控

安装webpack开发服务器

npm add -D webpack-dev-server

 

启动服务

npx webpack serve --open 

 测试:

 自动编译的有些慢,但是监听的构建都是成功的 

devtool:"inline-source-map" 配置源码的映射

vite">vite

介绍

Vite是一种新型的前端构建工具,它能显著改善前端开发体验。
Vite由两个主要部分组成:
dev server:利用浏览器的ESM能力来提供源文件,具有丰富的内置功能并具有高效的HMR
生产构建:生产环境利用Rollup来构建代码,提供指令用来优化构建过程
Vite作为一个基于浏览器原生ESM的构建工具,它省略了开发环境的打包过程,利用浏览器去解析imports,在服务端按需编译返回。同时,在开发环境拥有速度快到惊人的模块热更新,且热更新的速度不会随着模块增多而变慢。因此,使用Vite进行开发,至少会比Webpack快10倍左右。

使用

初始化node项目

安装vite

  npm add -D vite

 

 新建index.js文件

新建html文件

 输入 npx vite进行构建

 测试:

 可以看到vite的编译明显要比webpack快的多

使用vite构建项目

npx vite build

 

 

 预览构建的项目

npx vite preview

 

 

还可以直接在package.json文件中进行命令配置

 

对应直接输入 npm run dev,npm run build ,npm run preview即可 

vite%E5%88%9B%E5%BB%BAvue%E6%A1%86%E6%9E%B6%E9%A1%B9%E7%9B%AE">使用vite创建vue框架项目

使用npm

npm create vite@latest

使用yarn

yarn create vite

使用pnpm

pnpm create vite

 

 

 选择项目类型

 这里以创建vue来做示例

创建完成

 

启动测试:

 

 

 


http://www.niftyadmin.cn/n/473944.html

相关文章

【UE Cesium】01-在虚幻5中使用Cesium

UE版本:5.1 步骤 1. 首先我们新建一个空白的工程 2. 在虚幻商城中搜索“Cesium for Unreal”,然后点击“安装到引擎” 3. 在虚幻编辑器中搜索插件“cesium”,勾选如下插件,然后重启编辑器 4. 重启后我们新建一个空白关卡 保存关卡…

【Vue3】CustomImport 导入文件组件

1. 效果图 2. 组件完整代码 <template><div class"custom-import-warpper"><el-dialog v-model"dialogVisible" :title"dialogTitle" width"600px" :close-on-click-modal"false"><el-form label-wid…

SQL count(1)、count(*) 与 count(列名) 到底有什么区别?

count(*) 和 count(1)和count(列名)区别 执行效果上&#xff1a; count(*)包括了所有的列&#xff0c;相当于行数&#xff0c;在统计结果的时候&#xff0c;不会忽略为NULL的值。 count(1)包括了忽略所有列&#xff0c;用1代表代码行&#xff0c;在统计结果的时候&#xff0c…

《Pytorch深度学习和图神经网络(卷 1)》学习笔记——第五章

全连接神经网络 隐藏层的节点数决定了模型拟合能力&#xff0c;如果在单隐藏层设置足够多的节点&#xff0c;理论上可以拟合世界上各种维度的数据进行任意规则的分类&#xff0c;但会过拟合。 隐藏层的数量决定了其泛化能力&#xff0c;层数越多&#xff0c;推理的能力越强&am…

c++类和对象收尾

文章目录 隐式类型转换匿名对象拷贝构造----->构造 隐式类型转换 //隐式类型转换 class A { public:/*explicit A(int a ):_a(a){cout << "A(int a )" << endl;}*/A(int a):_a(a){cout << "A(int a )" << endl;}A(const A&…

python之csvkit:用于转换和操作CSV的工具

目录 一、csvkit介绍 二、csvclean示例 三、csvcut示例 四、csvjoin示例 五、csvsort示例 六、csvsql示例 七、csvstack示例 八、总结 CSV是一种常见的数据格式&#xff0c;被广泛应用在数据分析、数据处理等领域。CSV数据格式简单易懂、易于操作&#xff0c;但是在实际…

如何判断端口有没有被占用

第一步&#xff1a;打开cmd 输入netstat -ano 可以查看自己的所有端口&#xff0c;第一行的本地地址是端口22&#xff0c;最右面对应的pid13260 第二步&#xff1a;打开任务管理器对应的PID就知道那个服务项占用了22端口了 第二种查看指定方法&#xff1a; netstat -ano|finds…

同时配置cuda11.0和11.1环境

同时配置cuda11.0和11.1环境 背景思路流程电脑环境确认确认位置安装新CUDA环境1、执行cuda.exe2. 配置环境变量 安装cudnn 背景 【在电脑上安装多个版本的cuda】&#xff1a;电脑已经安装好了cuda11.0&#xff0c;由于mmdetection版本不匹配&#xff0c;所以想要再安装cuda11.…