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

新手入门 React .tsx 项目:从零到实战

🚀 新手入门 React .tsx 项目:从零到实战 💻✨

如果你是 React 新手,刚接触 .tsx 文件,不要担心!跟着这份指南,一步一步来,你很快就能上手了!👇


📚 1. 基础知识准备

在开始 React .tsx 项目之前,先确保你对以下内容有基本了解:

HTML / CSS / JavaScript:网页开发的三大基石。
TypeScript:React .tsx 文件使用 TypeScript,帮助你进行类型检查。
Node.js 和 npm/yarn:包管理工具,帮助你安装依赖。

🛠️ 安装 Node.js 和 npm/yarn

👉 Node.js 官方网站 下载并安装。
👉 验证安装:

node -v
npm -v

🛠️ 2. 安装 React 开发环境

React 提供了一个非常方便的脚手架工具:Create React App

安装 React 项目

npx create-react-app my-app --template typescript
cd my-app
npm start

📌 说明

  • --template typescript 表示项目将使用 TypeScript。
  • npm start 启动开发服务器,在浏览器中打开 http://localhost:3000

🗂️ 3. 理解 React 项目结构

my-app/
├── src/                // 主要代码目录
│   ├── App.tsx         // 主组件
│   ├── index.tsx       // 入口文件
│   ├── components/     // 自定义组件
│   ├── styles/         // 样式文件
│   ├── assets/         // 静态资源
│   └── App.css         // 全局样式
├── public/             // 静态资源
├── package.json        // 项目配置文件
└── tsconfig.json       // TypeScript 配置文件

📝 关键文件解析

  • index.tsx:项目的入口文件,挂载根组件。
  • App.tsx:主组件,页面内容从这里开始。
  • package.json:项目依赖和脚本配置。
  • tsconfig.json:TypeScript 配置文件。

🧩 4. 编写第一个组件

src 文件夹中创建一个简单的组件:

👉 新建 src/components/HelloWorld.tsx

import React from 'react';interface Props {name: string;
}const HelloWorld: React.FC<Props> = ({ name }) => {return <h1>Hello, {name}! 👋</h1>;
};export default HelloWorld;

👉 在 App.tsx 中引入组件

import React from 'react';
import HelloWorld from './components/HelloWorld';function App() {return (<div><HelloWorld name="React 新手" /></div>);
}export default App;

👉 启动项目

npm start

✨ 在浏览器中,你将看到:
Hello, React 新手! 👋


🎨 5. 添加样式

HelloWorld.tsx 中添加样式:

👉 新建 src/components/HelloWorld.module.css

h1 {color: #4caf50;font-size: 24px;text-align: center;
}

👉 修改 HelloWorld.tsx

import React from 'react';
import styles from './HelloWorld.module.css';interface Props {name: string;
}const HelloWorld: React.FC<Props> = ({ name }) => {return <h1 className={styles.h1}>Hello, {name}! 👋</h1>;
};export default HelloWorld;

🔄 6. 状态管理(Hooks)

React 使用 Hooks 管理组件状态:

👉 在 App.tsx 中使用状态

import React, { useState } from 'react';function App() {const [count, setCount] = useState(0);return (<div><h1>计数器:{count}</h1><button onClick={() => setCount(count + 1)}>增加</button></div>);
}export default App;

🧠 解释

  • useState 用于创建和管理组件的状态。
  • 点击按钮,count 状态增加。

🌍 7. 路由管理

安装 React Router

npm install react-router-dom

👉 配置路由(App.tsx

import React from 'react';
import { BrowserRouter, Routes, Route } from 'react-router-dom';function Home() {return <h1>首页</h1>;
}function About() {return <h1>关于我们</h1>;
}function App() {return (<BrowserRouter><Routes><Route path="/" element={<Home />} /><Route path="/about" element={<About />} /></Routes></BrowserRouter>);
}export default App;

👉 访问页面

  • http://localhost:3000/ → 首页
  • http://localhost:3000/about → 关于我们

📦 8. 打包与部署

打包项目

npm run build

部署

build 文件夹内容上传到服务器或部署到 VercelNetlify 等平台。


🎯 9. 进阶学习

状态管理库:学习 ReduxRecoil
组件库:使用 Ant DesignMaterial UI 提高开发效率。
性能优化:学习 React.memouseMemouseCallback


🐾 10. 学习资源

📚 推荐学习资料

  • React 官方文档
  • TypeScript 官方文档
  • React Router 官方文档

🎉 恭喜你!你已经成功入门 React .tsx 项目啦!
🛠️ 接下来,动手开发一个小项目吧,比如待办事项、博客系统或电商页面! 💪😊

http://www.lryc.cn/news/517514.html

相关文章:

  • 基于可信数据空间的企业数据要素与流通体系建设(附ppt 下载)
  • 二维数组:求最大元素及其所在的行坐标及列坐标(PTA)C语言
  • WebRtc01: 课程导学、框架介绍
  • HQChart使用教程30-K线图如何对接第3方数据44-DRAWPIE数据结构
  • 【cuda学习日记】2.2 使用2维网络(grid)和2维块(block)对矩阵进行求和
  • 深度学习中CUDA环境安装教程
  • IDEA的常用设置
  • 【VUE+ElementUI】通过接口下载blob流文件设置全局Loading加载进度
  • 算法的五个重要特性和4个基本标准
  • svelte5中使用react组件
  • iOS - 自定义引用计数(MRC)
  • 北航现实场景无人机VLN新基准! OpenUAV:面向真实环境的无人机视觉语言导航,平台、基准与方法
  • OpenCV计算机视觉 08 图像的旋转
  • C++感受15-Hello STL 泛型启蒙
  • 【Java 学习】对象赋值的艺术:Java中clone方法的浅拷贝与深拷贝解析,教你如何在Java中实现完美复制
  • 基于高斯混合模型的数据分析及其延伸应用(具体代码分析)
  • 无人机+Ai应用场景!
  • 操作手册:集成钉钉审批实例消息监听配置
  • AI大模型-提示工程学习笔记4
  • Vue3.5 企业级管理系统实战(一):项目初始搭建与配置
  • 缓存-Redis-缓存更新策略-主动更新策略-Cache Aside Pattern(全面 易理解)
  • 杭州市有哪些大学能够出具论文检索报告?
  • SpringBootWeb 登录认证(day12)
  • 使用AOP在切面逻辑中无法获取到requesetBody
  • 生成模型:变分自编码器-VAE
  • Hive sql执行文件合并配置参数
  • 鸿蒙 ArkUI实现地图找房效果
  • 一套极简易的直流无刷电机(Deng FOC)开发套件介绍
  • Inception模型详解及代码分析
  • Springboot AOP 每个接口运行前 修改入参