新手入门 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 官方网站 下载并安装。

👉 验证安装:

bash 复制代码
node -v
npm -v

🛠️ 2. 安装 React 开发环境

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

安装 React 项目

bash 复制代码
npx create-react-app my-app --template typescript
cd my-app
npm start

📌 说明

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

🗂️ 3. 理解 React 项目结构

plaintext 复制代码
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

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 中引入组件

tsx 复制代码
import React from 'react';
import HelloWorld from './components/HelloWorld';

function App() {
  return (
    <div>
      <HelloWorld name="React 新手" />
    </div>
  );
}

export default App;

👉 启动项目

bash 复制代码
npm start

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


🎨 5. 添加样式

HelloWorld.tsx 中添加样式:

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

css 复制代码
h1 {
  color: #4caf50;
  font-size: 24px;
  text-align: center;
}

👉 修改 HelloWorld.tsx

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 中使用状态

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

bash 复制代码
npm install react-router-dom

👉 配置路由(App.tsx

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. 打包与部署

打包项目

bash 复制代码
npm run build

部署

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


🎯 9. 进阶学习

状态管理库 :学习 ReduxRecoil

组件库 :使用 Ant DesignMaterial UI 提高开发效率。

性能优化 :学习 React.memouseMemouseCallback


🐾 10. 学习资源

📚 推荐学习资料


🎉 恭喜你!你已经成功入门 React .tsx 项目啦!

🛠️ 接下来,动手开发一个小项目吧,比如待办事项、博客系统或电商页面! 💪😊

相关推荐
卷帘依旧5 分钟前
JavaScript中this绑定问题详解
前端·javascript
dweizhao22 分钟前
突发!Claude Code源码泄露了
前端
sunny_1 小时前
💥 Claude Code 源码泄露?我把这个最强 AI Coding Agent 的架构扒干净了
前端·agent·claude
西洼工作室1 小时前
React轮播图优化:通过延迟 + 动画的组合,彻底消除视觉上的闪烁感
前端·react.js·前端框架
yaaakaaang1 小时前
(八)前端,如此简单!---五组结构
前端·javascript
我是若尘1 小时前
我的需求代码被主干 revert 了,接下来我该怎么操作?
前端·后端·代码规范
魁首2 小时前
Claude Code 源码泄露的背后,到底与Codex,Gemini 有啥不一样?
前端·openai·claude
攀登的牵牛花2 小时前
程序员失业论,被 SWE-CI 一组数据打醒:真正先被替代的是低质量交付
前端·github
BumBle2 小时前
Vue项目中实现路由守卫自动取消Pending请求
前端
gCode Teacher 格码致知2 小时前
Javascript提高:get和post等请求,对于汉字和空格信息进行编码的原则-由Deepseek产生
开发语言·前端·javascript·node.js·jquery