React 中点击按钮动态显示标题的正确实现方法

8次阅读

React 中点击按钮动态显示标题的正确实现方法

react 中,事件处理函数(如 onclick)执行后不会自动渲染其返回的 jsx,必须通过状态管理(如 usestate)触发组件重新渲染才能显示新内容。

在你提供的代码中,Letsee 是一个普通函数,当按钮被点击时,它确实会被调用,也会执行 console.log(‘Hii’),但它的返回值

Hii

并未被插入到组件的渲染树中——因为 onClick 只负责“执行函数”,并不接收或使用其返回的 jsX。

✅ 正确做法是:利用 react 的响应式状态机制,通过 useState 控制 ui 的显隐。点击按钮时更新状态,触发组件重新渲染,从而有条件地展示

标签。

以下是修正后的完整示例:

import { useState } from 'react';  function Test1() {   const [showH1, setShowH1] = useState(false); // 初始化为 false,不显示 h1    return (     <>       {showH1 && 

Hii

} {/* 条件渲染:仅当 showH1 为 true 时显示 */} ); } export default Test1;

? 关键要点说明:

  • useState 是 React 提供的 Hook,用于在函数组件中添加本地状态;
  • showH1 是布尔状态变量,决定

    是否渲染;

  • setShowH1(true) 是更新状态的方法,调用后 React 自动重运行 Test1 函数并重新渲染 dom
  • 使用 && 进行条件渲染是简洁安全的方式(避免 NULL/undefined 渲染问题);

⚠️ 注意事项:

  • 不要在 onClick 中直接调用渲染函数(如 onClick={Letsee}),这只会执行逻辑,无法影响 UI;
  • 避免在事件处理中返回 JSX 期望它“自动出现”——React 的渲染必须由状态或 props 驱动;
  • 若需点击后隐藏标题,可扩展为切换状态:onClick={() => setShowH1(!showH1)}。

掌握状态驱动渲染,是理解 React 数据流与 UI 同步的核心基础。

text=ZqhQzanResources