新的打包工具 Rsbuild 尝鲜:Vue2-cli 项目迁移 Rsbuild

本文主要是介绍新的打包工具 Rsbuild 尝鲜:Vue2-cli 项目迁移 Rsbuild,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当前时间 2024-08-31

看到一个新的打包工具,于是想试一试,这里是官网

在这里插入图片描述

在这里插入图片描述


测试

用过 vue-cli 的同志们应该有所感受,启动项目挺慢的,我这个项目不太大,第一次启动是最慢的,之后启动快了一些些,而且也是编译了三四次,也花费了六七秒的时间(第一次的时间大概有10多秒,我没录下来)

请添加图片描述

再试试 rsbuild,用了不到 4s,不过对比第一次冷启动还是快了不少的

请添加图片描述


迁移过程

不同脚手架的项目迁移,具体参照的是 官网的迁移

因为我是 Vue2-cli 的项目,所以参考了下面的链接:

对于使用 Vue CLI 的项目,可以参考 Rsbuild - 从 Vue CLI 迁移

只是添加了一个 rsbuild.config.js 文件,还有添加了几个依赖包

在这里插入图片描述
我的 rsbuild.config.js 里主要配置了 pluginVue2 以及静态资源的 alias(路径别名)

什么是 alias :路径别名(alias)允许开发者为模块定义别名,以便于在代码中更方便的引用它们。当你想要使用一个简短、易于记忆的名称来代替冗长复杂的路径时,这将非常有用。

// rsbuild.config.js
import { defineConfig } from "@rsbuild/core";
import { pluginVue2 } from "@rsbuild/plugin-vue2";
import path from "path";export default defineConfig({html: {template: "./public/index.html",},plugins: [pluginVue2()],source: {// Specify the entry fileentry: {index: "./src/main.js",},alias: {"@": path.resolve(__dirname, "src"),"@assets": path.resolve(__dirname, "src/assets"),"/static": path.resolve(__dirname, "public/static"),},},output: {distPath: {root: 'build',js: 'resource/js',},},
});

新增的依赖也挺少的:

在这里插入图片描述


热更新

两者都还可以,一个0.1秒左右,一个 0.4秒左右

rsbuild 的热更新如下:
在这里插入图片描述

vue-cli-serve 热更新如下:

在这里插入图片描述

打包测试

同时打包:
请添加图片描述
感觉处理器资源会有抢夺,所以在试试分开打包:

vue-cli 的打包:
请添加图片描述
rsbuild 的打包:

请添加图片描述
速度大概是 8s vs 4.39s (只测了一轮)

体积是图片如下:
在这里插入图片描述

打包速度打包体积
Rsbuild4.39s7MB
Vue2-cli8s7.3MB

和之前的打包工具共存

因为是在尝鲜阶段,所以想着 vue-clirsbuild 共存,我测试了一下,当前组合是可以的

在这里插入图片描述

问题

Q1: 打包的时候报错: Cannot find module ‘webpack/lib/rules/BasicEffectRulePlugin’

 Cannot find module 'webpack/lib/rules/BasicEffectRulePlugin'

在这里插入图片描述
安装这个:

npm install vue-loader@latest

这篇关于新的打包工具 Rsbuild 尝鲜:Vue2-cli 项目迁移 Rsbuild的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1124005

相关文章

Python实现微信自动锁定工具

《Python实现微信自动锁定工具》在数字化办公时代,微信已成为职场沟通的重要工具,但临时离开时忘记锁屏可能导致敏感信息泄露,下面我们就来看看如何使用Python打造一个微信自动锁定工具吧... 目录引言:当微信隐私遇到自动化守护效果展示核心功能全景图技术亮点深度解析1. 无操作检测引擎2. 微信路径智能获

Java中的工具类命名方法

《Java中的工具类命名方法》:本文主要介绍Java中的工具类究竟如何命名,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java中的工具类究竟如何命名?先来几个例子几种命名方式的比较到底如何命名 ?总结Java中的工具类究竟如何命名?先来几个例子JD

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

将Java程序打包成EXE文件的实现方式

《将Java程序打包成EXE文件的实现方式》:本文主要介绍将Java程序打包成EXE文件的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录如何将Java程序编程打包成EXE文件1.准备Java程序2.生成JAR包3.选择并安装打包工具4.配置Launch4

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的

HTML5表格语法格式详解

《HTML5表格语法格式详解》在HTML语法中,表格主要通过table、tr和td3个标签构成,本文通过实例代码讲解HTML5表格语法格式,感兴趣的朋友一起看看吧... 目录一、表格1.表格语法格式2.表格属性 3.例子二、不规则表格1.跨行2.跨列3.例子一、表格在html语法中,表格主要通过< tab

MySql match against工具详细用法

《MySqlmatchagainst工具详细用法》在MySQL中,MATCH……AGAINST是全文索引(Full-Textindex)的查询语法,它允许你对文本进行高效的全文搜素,支持自然语言搜... 目录一、全文索引的基本概念二、创建全文索引三、自然语言搜索四、布尔搜索五、相关性排序六、全文索引的限制七