从零搭建一个Vite-react脚手架(附源码)

写在开头(边听歌边看效果更佳)
  • 在之前,已经很多朋友已经升级到了vite,但是大部分都是vue的项目,那么今天我们把之前webpackreact项目升级到vite!

  • 为此,为了让大家少踩坑,我先把china-dev.cn这个网站项目升级到了vite

  • 对于在线画图功能,可能没有什么影响,但是跟在线编写javascript这个功能影响挺大,因为之前使用的库,会跟webpack绑定,目前不支持vite,于是我更换了技术栈,但是效果反而更好了~,这说明,跟webpack强绑定是一个伪命题,办法总比困难多,构建工具只是一种选择而已~

PS:这个网站永远免费,里面还有大量前端免费学习资料,为此,我把这个项目抽离了业务部分,然后做成了一个简单的项目模板

正式开始

如果你没看过我之前写的:webpack和vite的核心区别,建议你先看一遍,再来看这篇文章

  • Vite和Webpack的核心差异

  • webpack迁移到vite,最先要解决的事情:

    • 把跟webpack强关联的插件&技术栈解耦,任何时候,跟一个第三方工具&环境强依赖,都不是一件好事,这一点,做过重型系统部署的架构师,相信都有这个感触

    • 将项目中除了import引入方式的,全部替换成通过import引入。可以这样说,esm就是一种趋势,因为它就是一个规范。vue3已经不支持ie11,替换国内老旧系统只是时间而已,这是一个大趋势,深圳官方的一些网站已经开始推荐你使用新的浏览器了~

    • 规范你的代码,不能出现typescript的类型错误等和其他警告等,vite的热更新非常脆弱,有可能你一个小的警告或不规范写法,就会导致热更新失效,而且报错定位不准,或者直接不报错,而是失效(下面会说这些坑)

  • 接下来 克隆我的脚手架到本地

    • 地址 https://github.com/JinJieTan/Peter-/tree/master/vite-react-ts-antd

    • 将你的src源码目录植入我的项目模板中

    • 项目根目录执行yarn安装依赖

    • index.hmtl入口文件,我这里默认是去加载src/index.tsx文件

    • 执行 yarn dev, 启动项目 ,如果此时你的代码没问题,已经run起来了(我项目中默认是react17.x,ts4.x版本,如果需要降级,请你安装指定依赖)

脚手架说明:
  • 通过husky在每次git commit 时候使用prettier统一美化代码,再通过eslint进行代码检测,最终使用commitlint提交信息是否符合要求,以此保证代码质量

这几十条规则,都是我一条一条精挑细选出来的,因为我不喜欢用不清楚别人细节的东西,这套规则我也希望大家用下去,每一条都有注释

 rules: {
        semi: ['error', 'always'], // 该规则强制使用一致的分号
        'no-unused-vars': 'off', // 禁止未使用过的变量
        'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off', //生产环境禁用 debugger
        'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off', //生产环境禁用 console
        'default-case': ['warn', { commentPattern: '^no default$' }], //要求 Switch 语句中有 Default
        'dot-location': ['warn', 'property'], // 强制在点号之前或之后换行
        eqeqeq: ['error', 'allow-null'], //要求使用 === 和 !==
        'new-parens': 'warn', //要求调用无参构造函数时带括号
        'no-caller': 'error', // 禁用 caller 或 callee
        'no-const-assign': 'error', //不允许改变用 const 声明的变量
        'no-dupe-args': 'error', //禁止在 function 定义中出现重复的参数
 
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
npx create-react-app和使用Vite创建React应用都是常见的前端工具,它们各有优缺点。 优点: npx create-react-app: - 简单易用:create-react-app是React官方提供的脚手架工具,使用简单,适合快速搭建React项目。 - 完善的生态系统:create-react-app集成了许多常用的工具和配置,如Babel、Webpack等,使得开发者无需手动配置即可进行开发。 - 社区支持:由于create-react-app广泛使用,因此有丰富的社区支持和文档资料可供参考。 Vite: - 极速开发:Vite使用ES模块的开发服务器和即时编译机制,启动速度快,冷启动时间短,能够提供更快的开发体验。 - 原生ES模块支持:Vite利用浏览器的原生ES模块支持,无需打包和转换,能够直接在浏览器中运行和调试代码,提高开发效率。 - 插件生态系统:Vite支持丰富的插件系统,可以轻松集成各种功能和工具,如TypeScript、CSS预处理器等。 缺点: npx create-react-app: - 一体化配置:create-react-app的配置相对固定,对于一些高度定制化的需求可能不够灵活,需要手动eject来获得更多配置项的控制权。 - 较大的初始包体积:create-react-app默认集成了许多工具和库,导致初始包体积较大,对于需要快速加载的项目可能不太合适。 Vite: - 生态系统相对较新:相比create-react-app,Vite的生态系统相对较新,可能在某些功能或插件的支持上不如create-react-app成熟。 - 配置复杂性:Vite相对于传统的打包工具(如Webpack)来说,配置相对简单,但对于不熟悉ES模块化和Vite特有的配置项的开发者来说,上手可能需要一些时间。 综上所述,npx create-react-app适合快速搭建React项目,并且拥有完善的生态系统和社区支持。Vite适合追求极速开发体验、原生ES模块支持和插件生态系统的开发者。选择使用哪种工具取决于项目需求、开发经验和个人偏好。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值