当前位置: 首页 > news >正文

react开发环境搭建

在这里插入图片描述

文章目录

    • 准备工作
    • 创建 React 项目
        • 使用 create-react-app 创建 React 项目
        • 使用 Vite 创建 React 项目
        • 启动项目效果
        • 安装出现的情况
    • react项目文件讲解
        • 1. 项目根目录
        • 2. 其他可能的目录和文件
        • 3. 配置文件


准备工作

Node.js 安装方法

方式一:使用 NVM 安装 Node.js

  • NVM 下载地址:nvm-windows
  • Node.js 包下载地址:Node.js Releases
  • 优点:NVM 允许灵活切换 Node.js 版本,适合需要管理多个版本的情况。

方式二:直接安装 Node.js

  • Node.js 下载地址:Node.js 官方下载
  • 优点:直接安装更简单,适合不需要频繁切换版本的用户。

创建 React 项目

要创建一个新的 React 项目,可以使用以下几种方法。以下是使用 create-react-app 工具的标准步骤,这是最常用的方法:

使用 create-react-app 创建 React 项目
  1. 确保你已安装 Node.js 和 npm
    你可以通过以下命令检查是否安装了 Node.js 和 npm:

    node -v
    npm -v
    

    如果没有安装,请先安装 Node.js(包含 npm)。

  2. 安装 create-react-app
    你可以全局安装 create-react-app 工具(可选):

    npm install -g create-react-app
    
  3. 创建一个新的 React 项目
    使用 create-react-app 创建一个新的项目,替换 my-app 为你想要的项目名称:

    npx create-react-app my-app
    

    npx 是 npm 5.2.0 及更高版本随附的工具,用于运行命令行工具而无需全局安装。

  4. 进入项目目录
    进入你创建的项目文件夹:

    cd my-app
    
  5. 启动开发服务器
    启动项目的开发服务器:

    npm start
    

    默认情况下,开发服务器会在 http://localhost:3000 运行。

  6. 打开浏览器查看项目
    你可以在浏览器中访问 http://localhost:3000,你会看到 create-react-app 默认生成的欢迎页面。

使用 Vite 创建 React 项目

作为另一种现代的选择,你还可以使用 Vite 创建 React 项目,它通常具有更快的启动时间和构建速度:

  1. 安装 Vite
    使用以下命令创建新项目,替换 my-app 为你的项目名称:

    npm create vite@latest my-app --template react
    
  2. 进入项目目录

    cd my-app
    
  3. 安装依赖

    npm install
    
  4. 启动开发服务器

    npm run dev
    

    默认情况下,开发服务器会在 http://localhost:5173 运行。

选择 create-react-appVite 取决于你的项目需求和个人偏好。两者都是创建 React 项目的有效工具。

启动项目效果

安装出现的情况
Need to install the following packages:create-react-app@5.0.1
Ok to proceed? (y)


输入y即可

react项目文件讲解

在一个使用 create-react-app 工具创建的 React 项目中,默认的项目结构包含了一些标准的文件和目录。以下是对这些文件和目录的详细讲解:

1. 项目根目录
  • node_modules/
    存放项目依赖的第三方库和模块。这个目录是由 npm 自动生成的,不需要手动管理。

  • public/
    存放公开静态资源的目录。该目录下的文件会被直接暴露在生产环境中,不会经过 Webpack 处理。

    • index.html
      这是单页面应用的根 HTML 文件。React 应用会被挂载到这个文件中的 div 元素(通常是 id="root")。
  • src/
    存放项目源代码的目录。这是你主要的开发目录。

    • index.js
      应用的入口文件,React 应用会在这里被渲染到 index.html 文件中的 root 元素中。
    • App.js
      这是一个示例组件,作为应用的主要组件。通常,这个文件会包含应用的主要结构和逻辑。
    • App.css
      App.js 相关的 CSS 文件,用于样式化 App 组件。
    • index.css
      全局样式文件,应用于整个应用的样式。
    • logo.svg
      默认的 React 图标 SVG 文件,通常用于示例和测试。
    • serviceWorker.js
      一个用于注册服务工作线程的文件(在创建 PWA 时可以使用)。在最新版本的 create-react-app 中,这个文件可能被移除或不推荐使用。

      这些文件都可以移除或不推荐使用
  • .gitignore
    用于指定在使用 Git 版本控制时,哪些文件和目录应该被忽略。例如,node_modules/build/ 文件夹。

  • package.json
    项目的配置文件,包含项目的依赖、脚本、项目元数据等。你可以在这里定义项目的各种设置和依赖。

  • package-lock.json
    锁定依赖版本的文件。它确保在不同的机器上安装的依赖版本一致。

  • README.md
    项目的说明文件。你可以在这里添加项目的概述、使用说明、安装步骤等。

  • yarn.lock
    如果你使用 Yarn 作为包管理器,这个文件会被创建,功能类似于 package-lock.json,用于锁定依赖版本。

2. 其他可能的目录和文件
  • src/components/
    通常你会创建这个目录来存放你的 React 组件文件。每个组件通常会有一个 JavaScript/TypeScript 文件和一个对应的 CSS 文件。

  • src/assets/
    用于存放静态资源,如图片、字体等。

  • src/utils/
    用于存放工具函数或帮助类文件。

  • src/hooks/
    用于存放自定义的 React Hooks。

3. 配置文件
  • jsconfig.jsontsconfig.json
    如果你使用 TypeScript 或想要更好的 JavaScript 代码提示,可能会看到这些配置文件。

  • eslint.json
    如果项目使用了 ESLint 进行代码检查,可能会有这个配置文件,用于定义代码检查规则。

  • prettier.config.js
    如果使用 Prettier 进行代码格式化,可能会有这个配置文件。

您好,我是肥晨。
欢迎关注我获取前端学习资源,日常分享技术变革,生存法则;行业内幕,洞察先机。

相关文章:

react开发环境搭建

文章目录 准备工作创建 React 项目使用 create-react-app 创建 React 项目使用 Vite 创建 React 项目启动项目效果安装出现的情况 react项目文件讲解1. 项目根目录2. 其他可能的目录和文件3. 配置文件 准备工作 Node.js 安装方法: 方式一:使用 NVM 安装…...

python 逻辑语句简记

什么语言都少不了逻辑处理语句的使用,python的逻辑处理语句有自身的使用特点,稍稍总结记录一下 一、断言 assert 条件 条件触发,程序执行中断 二、条件语句 if 条件: 执行内容 三、循环语句 while 条件: 循环体…...

8.进销存系统(基于springboot的进销存系统)

目录 1.系统的受众说明 2.开发技术与环境配置 2.1 SpringBoot框架 2.2 Java语言简介 2.3 MySQL环境配置 2.4 idea介绍 2.5 mysql数据库介绍 2.6 B/S架构 3.系统分析与设计 3.1 可行性分析 3.1.1 技术可行性 3.1.2 操作可行性 3.1.3经济可行性 3.4.1 数据库…...

深入理解主键回显:提升数据操作效率与准确性

在软件开发的世界中,主键回显是一个常常被提及但又容易被忽视其重要性的概念。今天,我们就来深入探讨一下主键回显的奥秘。 一、什么是主键回显? 在数据库设计中,主键是用于唯一标识表中每一行记录的字段。而主键回显&#xff0…...

springboot+阿里云物联网教程

需求背景 最近有一个项目,需要用到阿里云物联网,不是MQ。发现使用原来EMQX的代码去连接阿里云MQTT直接报错,试了很多种方案都不行。最终还是把错误分析和教程都整理一下。 需要注意的是,阿里云物联网平台和MQ不一样。方向别走偏了。 概念描述 EMQX和阿里云MQTT有什么区别…...

QT Creator cmake 自定义项目结构, 编译输出目录指定

1. 目的 将不同的源文件放到不同的目录下进行管理, 如下: build: 编译输出目录 include: 头文件目录 rsources: 资源文件目录 src: cpp文件目录 2. 创建完cmake工程后修改CMakeLists.txt 配置 注 : 这里头文件目录是include, 所以在includ…...

lunar无第三方依赖的公历、农历、法定节假日...日历工具库

文章目录 介绍maven示例示例(前后端)网址文档 介绍 lunar是一款无第三方依赖的公历(阳历)、农历(阴历、老黄历)、道历、佛历工具,支持星座、儒略日、干支、生肖、节气、节日、彭祖百忌、吉神(喜神/福神/财神/阳贵神/阴贵神)方位、胎神方位、…...

(全网最细)ELF文件详解

ELF文件是什么 ELF文件是一种对象文件格式。ELF文件的全程是(Executeable and Linking Format,可执行可链接格式)。ELF文件格式主要有三种: 可重定向文件。可重定向文件就是可以用于和其他对象文件链接来创建一个可执行或者可分…...

Leetcode面试经典150题-39.组合总和

给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制重复被选取 。如…...

海外云市场分析

海外云市场数据洞察 2024 H1 季度数据 H1季度,全球云基础设施服务指数同比增长21%,达到798亿美元 (相比去年增加134亿美元),三大云服务提供商— AWS,微软Azure 和GCP 营收总增长率为24%,占总市场66%。 其中三大云厂商同比营收增长排序(2024 H1):微软 31%,G…...

显示和隐藏图片【JavaScript】

使用 JavaScript 来实现显示和隐藏图片。下面是一个简单的示例&#xff0c;展示如何通过按钮点击来切换图片的可见性。 实现效果: 代码&#xff1a; <!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8"><meta name&…...

Java调用数据库 笔记06 (修改篇)

1.创建Java的普通class类 2.加载驱动 Class.forName("com.mysql.jdbc.Driver"); 3.驱动管理类调用方法进行连接&#xff0c;得到连接对象 DriverManager.getConnection(url, user, password); 其中设置参数&#xff1a; static final String url "jdbc:my…...

virtualbox中的网络模式,网络设置,固定IP

virtualbox关于网络设置的文档&#xff1a;https://www.virtualbox.org/manual/topics/networkingdetails.html#networkingdetails DHCP Dynamic Host Configuration Protocol&#xff1a;动态主机配置协议&#xff0c;是专门用来给网络中的节点分发IP地址&#xff0c;确保每…...

2025年最新大数据毕业设计选题-Hadoop综合项目

选题思路 回忆学过的知识(Python、Java、Hadoop、Hive、Sqoop、Spark、算法等等。。。) 结合学过的知识确定大的方向 a. 确定技术方向&#xff0c;比如基于Hadoop、基于Hive、基于Spark 等等。。。 b. 确定业务方向&#xff0c;比如民宿分析、电商行为分析、天气分析等等。。。…...

实战C++手写线程池

课程总目录 文章目录 一、项目必备基础概念1.1 并发和并行1.2 多线程的优势1.3 线程的消耗1.4 线程池的优势1.5 线程池的两种模式:fixed模式和cached模式1.6 线程同步之线程互斥1.7 线程同步之线程通信1.7.1 条件变量1.7.2 信号量1.8 项目设计图浏览二、线程池代码展示三、线程…...

Alluxio Enterprise AI on K8s FIO 测试教程

Alluxio Enterprise AI on K8s FIO 测试视频教程 视频为Alluxio Enterprise AI on K8s FIO测试视频教程。fio是业内常用的磁盘与文件系统性能测试工具&#xff0c;下面内容将通过文字方式介绍Alluxio on k8s 进行fio测试的教程。 1. 测试环境 虚拟机规格&#xff1a;ecs.g3i.…...

学习使用在windows系统上安装vue前端框架以及环境配置图文教程

学习使用在windows系统上安装vue前端框架以及环境配置图文教程 1、安装nodejs2、安装vue3、安装Vue-cli脚手架4、安装高版本5、创建vue项目6、启动项目7、配置开发环境8、发布项目 1、安装nodejs 点我查看教程 2、安装vue winR&#xff0c;打开cmd cnpm install vue -g表示安…...

基于Delphi的题库生成系统

基于Delphi的题库生成系统是一个复杂的项目&#xff0c;涉及到多个模块的设计和实现。以下是一个简化的代码案例&#xff0c;展示了如何使用Delphi构建一个基本的题库生成系统。 1. 数据库设计 首先&#xff0c;你需要设计一个数据库来存储试题信息。一个简单的数据库设计可…...

鸿蒙OpenHarmony【小型系统基础内核(进程管理任务)】子系统开发

任务 基本概念 从系统的角度看&#xff0c;任务Task是竞争系统资源的最小运行单元。任务可以使用或等待CPU、使用内存空间等系统资源&#xff0c;并独立于其它任务运行。 OpenHarmony 内核中使用一个任务表示一个线程。 OpenHarmony 内核中同优先级进程内的任务统一调度、运…...

SpringBoot框架下的客户管理策略

1 绪论 1.1研究背景 随着网络不断的普及发展&#xff0c;企业客户管理系统依靠网络技术的支持得到了快速的发展&#xff0c;首先要从员工的实际需求出发&#xff0c;通过了解员工的需求开发出具有针对性的首页、个人中心、员工管理、客户信息管理、行业类型管理、项目信息管理、…...

Clover Bootloader虚拟化环境部署终极指南:QEMU、KVM、Xen全平台支持

Clover Bootloader虚拟化环境部署终极指南&#xff1a;QEMU、KVM、Xen全平台支持 【免费下载链接】CloverBootloader Bootloader for macOS, Windows and Linux in UEFI and in legacy mode 项目地址: https://gitcode.com/gh_mirrors/cl/CloverBootloader Clover Bootl…...

Codesys电子凸轮Cam表两种设置方法对比:可视化拖拽 vs 程序动态配置

Codesys电子凸轮Cam表设置方法深度对比&#xff1a;可视化拖拽与程序动态配置实战解析 在工业自动化领域&#xff0c;电子凸轮技术正逐步取代传统机械凸轮&#xff0c;成为运动控制系统的核心组件。作为Codesys平台下的重要功能&#xff0c;Cam表的设置方法直接关系到运动轨迹…...

批量视频加图片水印工具使用指南

软件简介批量视频加图片水印工具是一款桌面端视频水印批量添加工具&#xff0c;支持单张/多张水印、九宫格固定位置、四种随机位置模式、大小和透明度调节、时间间隔水印等功能。核心功能功能说明单张水印所有视频使用同一张水印图片多张随机水印从水印文件夹中随机选择水印图片…...

革新性暗黑破坏神2存档管理开源工具:d2s-editor全功能解析

革新性暗黑破坏神2存档管理开源工具&#xff1a;d2s-editor全功能解析 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 暗黑破坏神2存档修改门槛高&#xff1f;复杂二进制格式难以操作&#xff1f;d2s-editor作为免费开源的Web端…...

避开这些坑!MoveIt C++编程中setGoalTolerance、computeCartesianPath等关键函数使用详解与调试技巧

MoveIt C编程避坑指南&#xff1a;关键函数深度解析与实战调试技巧 在机器人运动规划领域&#xff0c;MoveIt作为ROS生态中的核心组件&#xff0c;为开发者提供了强大的功能接口。然而在实际C编程中&#xff0c;许多开发者往往陷入看似简单却暗藏玄机的函数调用陷阱。本文将聚焦…...

终极Django CORS Headers缓存优化指南:如何正确配置Vary头部提升性能

终极Django CORS Headers缓存优化指南&#xff1a;如何正确配置Vary头部提升性能 【免费下载链接】django-cors-headers Django app for handling the server headers required for Cross-Origin Resource Sharing (CORS) 项目地址: https://gitcode.com/gh_mirrors/dj/djang…...

终极指南:如何在5分钟内完成你的第一个React Native动画模态框

终极指南&#xff1a;如何在5分钟内完成你的第一个React Native动画模态框 【免费下载链接】react-native-modal An enhanced, animated, customizable Modal for React Native. 项目地址: https://gitcode.com/gh_mirrors/re/react-native-modal React Native动画模态框…...

Qwen3-0.6B-FP8效果对比:与Phi-3-mini、Gemma-2B在低资源设备上的实测PK

Qwen3-0.6B-FP8效果对比&#xff1a;与Phi-3-mini、Gemma-2B在低资源设备上的实测PK 想在小显存的电脑上跑个大模型&#xff0c;体验一下AI对话的乐趣&#xff0c;是不是总被“显存不足”的提示劝退&#xff1f;别急&#xff0c;今天我们就来一场专为“小显存”设备准备的AI模…...

从“偏科生”GPT-3到“全能选手”:聊聊MMLU基准如何推动大模型进化

从“偏科生”到“全能选手”&#xff1a;MMLU基准如何重塑大模型进化路径 当GPT-3在2020年以1750亿参数震惊世界时&#xff0c;人们很快发现这个"天才"存在明显的知识盲区——它在某些专业领域的表现堪比专家&#xff0c;却在另一些基础学科上失误频频。这种"偏…...

用PyTorch和snnTorch库5分钟搞定一个脉冲神经网络(SNN)手写数字识别Demo

用PyTorch和snnTorch库5分钟搞定一个脉冲神经网络&#xff08;SNN&#xff09;手写数字识别Demo 脉冲神经网络&#xff08;SNN&#xff09;作为第三代神经网络模型&#xff0c;正逐渐从学术研究走向工业应用。与传统人工神经网络不同&#xff0c;SNN通过模拟生物神经元的脉冲发…...