当前位置:首页 > React

react如何使用函数

2026-02-11 19:15:18React

函数组件的基本用法

在React中,函数组件是通过JavaScript函数定义的组件,接收props作为参数并返回React元素。

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

使用Hooks扩展功能

React Hooks允许函数组件管理状态和其他特性。常用Hooks包括:

  • useState:管理组件内部状态。

    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('https://api.example.com/data')
          .then(response => response.json());
      }, []); // 空依赖数组表示仅在挂载时执行
    }

传递Props

函数组件通过props接收父组件传递的数据:

function UserCard({ name, age }) {
  return (
    <div>
      <p>Name: {name}</p>
      <p>Age: {age}</p>
    </div>
  );
}
// 使用方式
<UserCard name="Alice" age={25} />

自定义Hook复用逻辑

将共享逻辑提取为自定义Hook(命名以use开头):

function useToggle(initialValue = false) {
  const [value, setValue] = useState(initialValue);
  const toggle = () => setValue(!value);
  return [value, toggle];
}
// 使用示例
function ToggleButton() {
  const [isOn, toggleIsOn] = useToggle();
  return <button onClick={toggleIsOn}>{isOn ? 'ON' : 'OFF'}</button>;
}

性能优化

  • React.memo:避免不必要的重新渲染。

    const MemoizedComponent = React.memo(function MyComponent(props) {
      /* 仅在props变化时重新渲染 */
    });
  • useCallback/useMemo:缓存函数或计算结果。

    react如何使用函数

    const memoizedCallback = useCallback(() => {
      doSomething(a, b);
    }, [a, b]); // 依赖变化时重新创建

分享给朋友:

相关文章

vue组件实现函数调用

vue组件实现函数调用

实现 Vue 组件函数调用的方法 在 Vue 组件中实现函数调用可以通过多种方式完成,以下是常见的几种方法: 通过 methods 定义并调用函数 在 Vue 组件的 methods 选项中定义函…

react如何使用jquery

react如何使用jquery

在 React 中使用 jQuery React 和 jQuery 的设计理念不同,React 基于虚拟 DOM 和数据驱动,而 jQuery 直接操作真实 DOM。若需在 React 中整合 jQu…

react dnd如何使用

react dnd如何使用

React DnD 使用指南 React DnD(Drag and Drop)是一个用于在 React 应用中实现拖放功能的库。它基于 HTML5 的拖放 API,提供了更高级的抽象和更好的 Reac…

react如何使用dispatch

react如何使用dispatch

使用 useDispatch 钩子 在函数组件中,通过 react-redux 提供的 useDispatch 钩子获取 dispatch 函数。引入 useDispatch 后直接调用即可:…

react如何使用插槽

react如何使用插槽

使用props.children实现基础插槽 React中插槽的核心是通过props.children传递子组件。父组件在标签内部放置的内容会自动成为children属性: // 父组件 <C…

react你如何使用axios

react你如何使用axios

安装 axios 在 React 项目中使用 axios 前,需要先安装它。可以通过 npm 或 yarn 安装: npm install axios 或 yarn add axios 引入 ax…