当前位置:首页 > React

react 如何编写app

2026-01-24 03:21:05React

React 开发 App 的基本步骤

创建 React 项目 使用 create-react-appVite 快速初始化项目:

npx create-react-app my-app
# 或
npm create vite@latest my-app --template react

项目结构 主要目录和文件包括:

  • src/:核心代码目录
    • App.js:根组件
    • index.js:入口文件
  • public/:静态资源

编写组件 函数组件示例:

import React from 'react';

function MyComponent() {
  return <div>Hello React App</div>;
}

export default MyComponent;

类组件示例:

import React, { Component } from 'react';

class MyComponent extends Component {
  render() {
    return <div>Hello React App</div>;
  }
}

export default MyComponent;

状态管理 使用 useState Hook:

import React, { useState } from 'react';

function Counter() {
  const [count, setCount] = useState(0);

  return (
    <div>
      <p>Count: {count}</p>
      <button onClick={() => setCount(count + 1)}>Increment</button>
    </div>
  );
}

路由配置 安装 react-router-dom

npm install react-router-dom

基本路由示例:

import { BrowserRouter as Router, Route, Routes } from 'react-router-dom';

function App() {
  return (
    <Router>
      <Routes>
        <Route path="/" element={<Home />} />
        <Route path="/about" element={<About />} />
      </Routes>
    </Router>
  );
}

样式处理 CSS Modules 示例:

import styles from './App.module.css';

function App() {
  return <div className={styles.container}>Content</div>;
}

API 调用 使用 fetchaxios

import React, { useEffect, useState } from 'react';
import axios from 'axios';

function DataFetching() {
  const [data, setData] = useState([]);

  useEffect(() => {
    axios.get('https://api.example.com/data')
      .then(response => setData(response.data));
  }, []);

  return <div>{data.map(item => <p key={item.id}>{item.name}</p>)}</div>;
}

构建与部署 生产环境构建:

npm run build

部署到静态主机服务(如 Vercel、Netlify)或配置服务器。

进阶开发建议

状态管理库 复杂应用可考虑 Redux 或 Context API:

// Context API 示例
const MyContext = React.createContext();

function App() {
  return (
    <MyContext.Provider value={/* 共享值 */}>
      <ChildComponent />
    </MyContext.Provider>
  );
}

性能优化 使用 React.memouseCallback

const MemoizedComponent = React.memo(function MyComponent(props) {
  /* 渲染逻辑 */
});

function Parent() {
  const memoizedCallback = React.useCallback(() => {
    // 回调函数
  }, []);
}

测试策略 Jest + React Testing Library 组合:

react 如何编写app

import { render, screen } from '@testing-library/react';
import App from './App';

test('renders learn react link', () => {
  render(<App />);
  const linkElement = screen.getByText(/learn react/i);
  expect(linkElement).toBeInTheDocument();
});

标签: reactapp
分享给朋友:

相关文章

vue实现app

vue实现app

Vue 实现移动端 App 的几种方法 使用 Vue.js 开发移动端 App 主要通过混合应用(Hybrid App)或渐进式 Web 应用(PWA)实现,以下是具体方案: 使用 Capacito…

react如何拓展

react如何拓展

React 拓展方法 使用高阶组件(HOC) 高阶组件是一种复用组件逻辑的方式,通过接收一个组件并返回一个新组件实现功能拓展。例如,为组件添加日志功能: function withLogging…

java如何react

java如何react

在Java中使用React 要在Java项目中集成React,通常需要将React前端与Java后端结合使用。以下是几种常见的方法: 使用Spring Boot作为后端 Spring Boot是一个…

react如何创建框架

react如何创建框架

React 创建框架的方法 React 本身是一个用于构建用户界面的 JavaScript 库,但可以通过多种方式创建框架或项目结构。以下是几种常见的方法: 使用 Create React App…

如何设计react组件

如何设计react组件

设计 React 组件的核心原则 React 组件的设计需要遵循高内聚、低耦合的原则,确保组件功能独立且易于维护。组件的设计可以分为展示组件和容器组件两类,展示组件负责 UI 渲染,容器组件负责逻辑处…

react如何提交表单

react如何提交表单

表单提交的基本方法 在React中提交表单通常通过控制组件状态和事件处理实现。表单数据通过onSubmit事件捕获,并阻止默认提交行为以避免页面刷新。 import { useState } fro…