当前位置:首页 > React

react如何清空input

2026-02-26 17:17:23React

清空 React 中的 Input 方法

在 React 中清空 input 可以通过以下几种方式实现:

使用受控组件方式

受控组件的值由 React 的 state 控制,清空 input 只需要将对应的 state 设为空字符串即可。

import React, { useState } from 'react';

function ClearInputExample() {
  const [inputValue, setInputValue] = useState('');

  const handleClear = () => {
    setInputValue('');
  };

  return (
    <div>
      <input 
        type="text" 
        value={inputValue} 
        onChange={(e) => setInputValue(e.target.value)} 
      />
      <button onClick={handleClear}>Clear</button>
    </div>
  );
}

使用非受控组件方式

通过 ref 直接访问 DOM 元素来清空 input 的值。

import React, { useRef } from 'react';

function ClearInputExample() {
  const inputRef = useRef(null);

  const handleClear = () => {
    inputRef.current.value = '';
  };

  return (
    <div>
      <input 
        type="text" 
        ref={inputRef} 
      />
      <button onClick={handleClear}>Clear</button>
    </div>
  );
}

结合表单清空

如果 input 位于表单中,可以重置整个表单来清空所有输入字段。

react如何清空input

import React, { useRef } from 'react';

function ClearFormExample() {
  const formRef = useRef(null);

  const handleClear = () => {
    formRef.current.reset();
  };

  return (
    <form ref={formRef}>
      <input type="text" />
      <button type="button" onClick={handleClear}>Clear</button>
    </form>
  );
}

注意事项

  • 受控组件方式更符合 React 的数据流理念,推荐优先使用
  • 非受控组件方式在某些特殊场景下可能更简单直接
  • 表单重置会清空表单内所有输入,使用时需注意范围

标签: 清空react
分享给朋友:

相关文章

react 如何引入jquery

react 如何引入jquery

引入 jQuery 到 React 项目 在 React 项目中引入 jQuery 可以通过多种方式实现,但需要注意 React 和 jQuery 操作 DOM 的方式可能冲突,因此建议仅在必要时使用…

react如何debugger

react如何debugger

调试 React 应用的方法 使用浏览器开发者工具进行调试 React 开发者工具(React DevTools)是调试 React 应用的必备工具。安装 Chrome 或 Firefox 扩展后,可…

react路由如何配置

react路由如何配置

React 路由配置方法 安装 React Router 使用 npm 或 yarn 安装 React Router 的 DOM 版本: npm install react-router-dom #…

vscode如何配置react

vscode如何配置react

配置 VSCode 进行 React 开发 安装必要插件 ES7+ React/Redux/React-Native snippets:提供 React 代码片段快速生成功能。 Prettier -…

react如何建项目

react如何建项目

创建React项目的几种方法 使用官方工具Create React App(CRA) npx create-react-app my-app 这条命令会创建一个名为my-app的新React项目,包含…

react如何减少伤害

react如何减少伤害

减少 React 应用性能伤害的方法 使用 React.memo 或 PureComponent 对于函数组件,使用 React.memo 进行浅比较,避免不必要的重新渲染。类组件可以使用 PureC…