当前位置:首页 > React

如何用react做增删

2026-01-24 10:08:36React

使用React实现增删功能

在React中实现增删功能通常涉及状态管理和列表渲染。以下是一个完整的实现方案:

初始化状态

需要定义一个状态来存储列表数据,可以使用useState钩子:

const [items, setItems] = useState([
  { id: 1, name: 'Item 1' },
  { id: 2, name: 'Item 2' }
]);

添加功能实现

创建添加函数,接收新项目数据并更新状态:

const addItem = (newItem) => {
  setItems([...items, {
    id: items.length + 1,
    name: newItem
  }]);
};

删除功能实现

根据ID过滤掉要删除的项目:

const deleteItem = (id) => {
  setItems(items.filter(item => item.id !== id));
};

完整组件示例

import React, { useState } from 'react';

function ItemList() {
  const [items, setItems] = useState([
    { id: 1, name: 'Item 1' },
    { id: 2, name: 'Item 2' }
  ]);
  const [inputValue, setInputValue] = useState('');

  const addItem = () => {
    if (inputValue.trim()) {
      setItems([...items, {
        id: Date.now(),
        name: inputValue
      }]);
      setInputValue('');
    }
  };

  const deleteItem = (id) => {
    setItems(items.filter(item => item.id !== id));
  };

  return (
    <div>
      <input
        value={inputValue}
        onChange={(e) => setInputValue(e.target.value)}
      />
      <button onClick={addItem}>Add</button>

      <ul>
        {items.map(item => (
          <li key={item.id}>
            {item.name}
            <button onClick={() => deleteItem(item.id)}>Delete</button>
          </li>
        ))}
      </ul>
    </div>
  );
}

使用唯一标识符

建议使用Date.now()或UUID生成ID,避免使用数组长度作为ID,可能导致删除后新增项目ID冲突。

性能优化

对于大型列表,可以考虑使用React.memo优化子组件渲染,或使用虚拟滚动技术。

如何用react做增删

状态管理方案

对于复杂应用,可以考虑使用Context API或Redux等状态管理库来管理全局状态。

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

相关文章

react实现vue

react实现vue

React 实现 Vue 功能 React 和 Vue 是两种不同的前端框架,但可以通过一些方法在 React 中实现 Vue 的特性。以下是几种常见 Vue 功能在 React 中的实现方式: 双…

如何优化react

如何优化react

优化 React 性能的方法 使用 React.memo 或 PureComponent 对于函数组件,使用 React.memo 进行记忆化,避免不必要的重新渲染。类组件可以使用 PureCompo…

react如何运行

react如何运行

运行React项目的步骤 安装Node.js 确保系统已安装Node.js(建议版本12以上),可从官网下载并安装。Node.js自带npm包管理器,用于后续依赖安装。 创建React项目 使用官方…

react如何验证

react如何验证

表单验证方法 在React中验证表单数据通常使用以下几种方式: 内置HTML5验证 利用HTML5原生表单验证属性如required、pattern等,结合form.noValidate属性禁用浏览…

如何开发react

如何开发react

开发React应用的基本步骤 安装Node.js和npm 确保系统中已安装Node.js(包含npm)。可通过官网下载安装包,安装后验证版本: node -v npm -v 创建React项目…

react如何循环

react如何循环

循环渲染列表 在React中循环渲染列表通常使用map方法,这是最常用的方式。通过map可以将数组中的每个元素转换为React元素并渲染到页面上。 const items = ['Apple', '…