当前位置:

首页 > 编程开发 > VSCode配置React环境:从零搭建Vite与React开发脚手架

VSCode配置React环境:从零搭建Vite与React开发脚手架

Vite比create-react-app更适合现在起步,因其启动极快、HMR精准、原生支持TS/JSX且配置开放;CRA则锁死webpack配置,自定义需绕路,而React官方文档自2026年3月起已推荐Vite。 直接用 npm create vite@latest 初始化,别碰 npm ini

Vite比create-react-app更适合现在起步,因其启动极快、HMR精准、原生支持TS/JSX且配置开放;CRA则锁死webpack配置,自定义需绕路,而React官方文档自2026年3月起已推荐Vite。

VSCode配置React环境:从零搭建Vite与React开发脚手架

直接用 npm create vite@latest 初始化,别碰 npm init 或手配 Webpack —— 后者八成会卡在 HMR 失效、JSX 不识别、路径跳转失败这三件事上。

为什么 Vite 比 create-react-app 更适合现在起步

选择构建工具,速度和灵活性往往是天平的两端。Vite的出现,恰好打破了这种平衡。它凭借极快的启动速度和精准的热模块替换(HMR),让开发体验有了质的飞跃。更重要的是,它对TypeScript和JSX的原生支持开箱即用,并且没有把配置锁死——vite.config.ts就明明白白地放在那里,随时可读可改。想加个路径别名?两行代码的事。

反观create-react-app,虽然上手确实省心,但其核心react-scripts将Webpack配置完全封装了起来。一旦你需要配置袋里、别名或者自定义loader,就不得不借助cracorescripts这类工具来“绕路”,反而增加了项目的复杂度和出错概率。

这里有几个常见的认知误区,值得拎出来说一说:

  • 误区一:Vite太新,不稳定? 这个顾虑可以放下了。React官方文档自2026年3月起,已经将Vite列为推荐脚手架。
  • 误区二:需要全局安装create-vite 完全没必要。npm create vite@latest是现代npm的写法,它会自动调用最新版本,干净又省事。
  • 误区三:初始化时要勾选“React Compiler”吗? 建议新手先别碰。它目前仍处于Alpha阶段,对useMemouseCallback等行为的影响尚不稳定,容易踩坑。

初始化命令与关键选项实操

理论说完,咱们动手。打开终端,执行这条命令:

npm create vite@latest my-react-app -- --template react

注意,命令结尾的--和空格是关键,这是npm传递参数的语法,漏掉的话模板可能无法正确识别。

接下来,命令行会进入交互式选择,跟着提示走就行:

  • 项目名:按需填写,比如my-react-app
  • 框架:毫不犹豫,选择React
  • 语言:推荐选择TypeScript。注意,这里不要选TypeScript + SWC,那是旧版遗留下来的选项。
  • 是否启用ESLint:建议选Yes。它会自动生成.eslintrc.js配置文件,并安装好eslint-plugin-reacteslint-plugin-react-hooks这两个必备插件。

选择完成后,进入项目目录、安装依赖、启动开发服务器,一气呵成:

cd my-react-app
npm install
npm run dev

此时,浏览器打开http://localhost:5173就能看到应用了。记住,别手动去改端口号。Vite默认使用5173端口,正好与create-react-app的3000端口错开,可以有效避免本地端口冲突的问题。

VSCode 必配三项:让 JSX 和跳转真正可用

项目跑起来只是第一步。要想在VSCode里获得丝滑的开发体验,下面这三项配置必不可少。否则,你很可能会遇到import路径无法跳转、JSX语法标红、类型提示失灵这些恼人的小毛病。

  • 配置路径映射:在项目根目录,确保存在tsconfig.json(TypeScript项目)或新建一个jsconfig.json(Ja vaScript项目)。关键是里面的配置:
    {
    "compilerOptions": {
    "baseUrl": "src",
    "paths": {
    "@/*": ["*"]
    }
    }
    }

    这里有个细节:"@/*": ["*"]的写法是关键。如果写成["src/*"],路径解析会多套一层,导致Ctrl+Click跳转功能依然失效。

  • 关闭Ja vaScript验证:在VSCode设置中搜索ja vascript.validate.enable,将其设置为false。这一步是为了防止TypeScript语言服务对JS文件进行误判,导致JSX标签报错。
  • 启用ESLint与格式化:确保已安装ESLint插件,并在设置中做两项调整:
    1. 在eslint.validate设置中,勾选上ja vascriptreacttypescriptreact
    2. 将editor.defaultFormatter设置为esbenp.prettier-vscode(假设已安装Prettier)。

容易被忽略的调试与热更新细节

Vite的热更新(HMR)虽然强大,但在某些特定环境下可能会静默失败。表现就是:改了代码页面没刷新、console.log没有输出、断点怎么也打不中。这通常不是插件的问题,而是环境配置上的一些小偏差。

  • 清理端口占用:首先,检查是否有其他进程占用了5173端口。在WSL2或类似环境下,遗留的Node进程是常见“凶手”。可以使用lsof -i :5173(Mac/Linux)或netstat -ano | findstr :5173(Windows)命令来排查。
  • 调整自动保存策略:VSCode的Auto Sa ve模式如果设置为afterDelay(延迟保存),可能会因为保存动作的延迟导致HMR无法及时捕获文件变更。建议改为onFocusChange(窗口失去焦点时保存)或直接关闭自动保存。
  • 使用正确的调试方式:调试Vite项目,不必大费周章地运行node --inspect。Vite本身就支持通过Chrome DevTools进行调试。启动npm run dev后,在VSCode中按Ctrl+Shift+P,输入Debug: Open Configuration,选择Chrome,然后将配置中的url改为http://localhost:5173即可轻松断点调试。

说到底,最容易被跳过的,往往是jsconfig.jsonbaseUrl的配置和关闭ja vascript.validate.enable这两步。它们通常不会导致项目报错崩溃,但却能让开发体验从“流畅顺手”降级到“勉强能用,总感觉哪里不对劲”。把这些细节做到位,才是真正高效开发的开始。

本文内容来源于互联网,如有侵权请联系删除。
作者最新文章
编程开发
相关文章 更多
Ant Design 6.2.1 发布,企业级 UI 设计语言和 React 实现
Ant Design 6.2.1 发布,企业级 UI 设计语言和 React 实现

AntDesign6.2.1发布,修复Button中文字符className清除、DatePicker图标同步、Table与Card圆角不一致等问题;优化CSS样式污染、background过渡动画及GridCSS变量稳定性;图标改为按需引入以减小体积,无破坏性变更。

Recharts 3.7.0 发布,React 和 D3 构建的图表库
Recharts 3.7.0 发布,React 和 D3 构建的图表库

Recharts3.7.0正式发布上线,Cell组件已弃用,需要迁移至图表组件的shape属性。新增useIsTooltipActive与useActiveTooltipCoordinate两个Hook函数。Tooltip偏移量支持坐标对象类型,X轴与Y轴新增自动轴类型。Bar组件修复TypeScript类型定义问题,并且修复了BarChart在嵌套图表中的

开源操作系统 ReactOS 诞生 30 周年
开源操作系统 ReactOS 诞生 30 周年

ReactOS开源项目迎来30周年,其前身FreeWin95计划始于1996年,后更名为ReactOS并转向兼容WindowsNT内核。2003年发布0.1.0版,经历代码审计后持续迭代,0.4.x版显著提升用户体验。当前稳定版0.4.15仍缺WoW64子系统,累计8.8万次提交,300余位开发者参与。未来路线图聚焦新构建工具链、NTFS驱动、SMP及ASL

如何用Qoder生成React项目
如何用Qoder生成React项目

首先,确保你已经安装了qoder。如果尚未安装,可以通过相应的包管理器进行安装,具体安装方式可参考qoder的最新文档。接下来,打开命令行工具。在命令行中,进入你希望创建react项目的目录。接下来,使用qoder的命令来初始化项目。一般而言,命令格式大致为:qoder create-react-p

Ant Design 6.2.2 发布,企业级 UI 设计语言和 React 实现
Ant Design 6.2.2 发布,企业级 UI 设计语言和 React 实现

AntDesign6.2.2发布,本次修复了排版下按钮颜色异常、按钮令牌应用错误、弹出框与表单项绑定异常、选择器多选占位符显示异常、分页器对齐错位及抽屉从右到左模式下拖拽手柄偏移等问题,显著提升稳定性。

using namespace 使用中遇到的问题怎么解决
using namespace 使用中遇到的问题怎么解决

命名空间的基本概念与常见引入问题在C++等编程语言中,命名空间(namespace)是一种将代码标识符(如变量、函数、类名)封装在特定名称下的机制,其主要目的是避免命名冲突,尤其是在大型项目或使用多个第三方库时。使用“using namespace”指令可以将指定命名空间中的所有名称引入当前作用域,

c语言函数递归 实操经验总结:这些技巧很实用
c语言函数递归 实操经验总结:这些技巧很实用

理解递归的基本原理在C语言中,递归是一种函数调用自身的编程技术。要掌握它,首先需要理解其核心思想:将一个复杂的大问题,分解为一个或几个与原问题相似但规模更小的子问题,直到子问题足够简单,可以直接求解。这个过程通常包含两个关键部分:递归出口和递归体。递归出口定义了问题何时不再继续分解,即最简单、可直接

c语言函数递归 怎么选?常见方案对比分析
c语言函数递归 怎么选?常见方案对比分析

递归函数的基本概念与适用场景在C语言编程中,递归是一种函数调用自身的编程技巧。它并非适用于所有问题,但在处理某些具有自相似结构的问题时,能提供极其清晰和优雅的解决方案。递归的核心思想是将一个大规模问题分解为一个或多个同类型但规模更小的子问题,直到子问题简单到可以直接求解。典型的适用场景包括树形结构的

Objective-C 内存管理入门:从 alloc 到 dealloc 的生命周期详解
Objective-C 内存管理入门:从 alloc 到 dealloc 的生命周期详解

理解内存管理的基石在Objective-C的编程世界中,内存管理是开发者必须掌握的核心技能之一。它直接关系到应用的性能、稳定性与资源利用效率。与一些采用自动垃圾回收机制的语言不同,Objective-C在很长一段时间里,依赖一套基于引用计数的、需要开发者部分介入的管理规则。这套规则的核心思想是明确的

如何正确使用 dealloc 以避免 iOS 应用中的内存泄漏
如何正确使用 dealloc 以避免 iOS 应用中的内存泄漏

理解 dealloc 的角色与时机在 iOS 应用开发中,内存管理是保障应用性能与稳定性的基石。dealloc 方法是 Objective-C 中对象生命周期结束时的关键回调,它标志着对象即将被系统回收内存。正确理解其触发时机至关重要:当一个对象的引用计数降为零时,运行时系统会自动调用该对象的 de

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件
macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

Mac软件 更多
灵活计算器
灵活计算器
macOS/iOS/Android

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

赤友清理大师
赤友清理大师
macOS

赤友清理大师是一款为 Mac 设计的智能清理优化工具,可精准扫描垃圾、大文件、重复文件等,释放磁盘空间。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

WINDOWS 更多
Windows 10
Windows 10
Windows

Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

密码键盘
密码键盘
Windows/macOS/iOS/Android

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。