当前位置:首页 > React

如何用react

2026-02-25 23:49:42React

安装 React

通过 create-react-app 快速初始化项目:

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

或使用 Vite 构建工具:

npm create vite@latest my-app --template react
cd my-app
npm install
npm run dev

基础组件开发

创建一个函数组件:

function Greeting({ name }) {
  return <h1>Hello, {name}!</h1>;
}

类组件写法:

class Greeting extends React.Component {
  render() {
    return <h1>Hello, {this.props.name}!</h1>;
  }
}

状态管理

使用 useState Hook:

import { useState } from 'react';

function Counter() {
  const [count, setCount] = useState(0);
  return (
    <button onClick={() => setCount(count + 1)}>
      Clicked {count} times
    </button>
  );
}

生命周期与副作用

useEffect 替代生命周期:

import { useEffect } from 'react';

function DataFetcher() {
  useEffect(() => {
    fetch('/api/data')
      .then(res => res.json())
      .then(console.log);
    return () => console.log('Cleanup');
  }, []); // 空数组表示仅运行一次
}

事件处理

内联事件绑定:

<button onClick={(e) => console.log(e.target)}>
  Click me
</button>

类组件中的方法绑定:

class EventDemo extends React.Component {
  handleClick = () => {
    console.log('Clicked');
  };

  render() {
    return <button onClick={this.handleClick}>Click</button>;
  }
}

表单控制

受控组件示例:

function Form() {
  const [value, setValue] = useState('');
  const handleSubmit = (e) => {
    e.preventDefault();
    console.log(value);
  };

  return (
    <form onSubmit={handleSubmit}>
      <input 
        value={value} 
        onChange={(e) => setValue(e.target.value)} 
      />
    </form>
  );
}

路由配置

使用 React Router v6:

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

function App() {
  return (
    <BrowserRouter>
      <Routes>
        <Route path="/" element={<HomePage />} />
        <Route path="/about" element={<AboutPage />} />
      </Routes>
    </BrowserRouter>
  );
}

样式处理

CSS Modules 用法:

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

function Button() {
  return <button className={styles.primary}>Submit</button>;
}

内联样式对象:

const style = {
  color: 'red',
  fontSize: '20px'
};

<div style={style}>Text</div>

性能优化

React.memo 缓存组件:

const MemoizedComponent = React.memo(function Component({ prop }) {
  return <div>{prop}</div>;
});

useCallback 避免重复渲染:

const memoizedCallback = useCallback(() => {
  doSomething(a, b);
}, [a, b]);

全局状态

使用 Context API:

如何用react

const ThemeContext = React.createContext();

function App() {
  return (
    <ThemeContext.Provider value="dark">
      <Toolbar />
    </ThemeContext.Provider>
  );
}

function Toolbar() {
  const theme = useContext(ThemeContext);
  return <div>{theme}</div>;
}

标签: 如何用react
分享给朋友:

相关文章

react如何取消渲染

react如何取消渲染

取消渲染的方法 在React中,取消渲染通常指的是在某些条件下阻止组件渲染或中断正在进行的渲染过程。以下是几种常见的方法: 条件渲染 通过条件判断决定是否渲染组件或部分内容。可以使用if语句或三元运…

如何手写一个react

如何手写一个react

手写一个简单的 React 创建一个基础的 React 实现需要理解其核心概念:虚拟 DOM、组件、状态管理和渲染。以下是一个简化版的 React 实现。 创建虚拟 DOM 虚拟 DOM 是真实 D…

如何下载react

如何下载react

下载 React 的方法 通过 npm 或 yarn 安装 React 可以通过包管理器 npm 或 yarn 安装。确保已安装 Node.js(包含 npm),然后在项目目录中运行以下命令:…

react如何引入

react如何引入

引入React的方法 React可以通过多种方式引入项目,具体取决于项目需求和开发环境。以下是常见的几种方法: 通过CDN引入 在HTML文件中直接通过CDN链接引入React和ReactDOM:…

如何升级react native

如何升级react native

升级 React Native 的步骤 检查当前版本 运行以下命令查看当前项目的 React Native 版本: react-native --version 更新 React Native CL…

如何外部访问react

如何外部访问react

外部访问 React 应用的方法 配置代理服务器 在开发环境中,可以通过配置代理服务器解决跨域问题。修改 package.json 文件,添加 proxy 字段指向后端 API 地址: "proxy…