Menu
CoddyTech

使用状态切换

本课属于 Coddy React 学习旅程的“基础知识”单元。第 25 课,共 42 课。

状态不只有数字。布尔型状态是显示和隐藏内容的标准开关:

const [isOpen, setIsOpen] = useState(false);

<button onClick={() => setIsOpen(!isOpen)}>Menu</button>
{isOpen ? <p>I am visible!</p> : null}

两个技巧配合使用:

  • setIsOpen(!isOpen):! 会反转布尔值,所以同一个按钮既能打开,也能关闭
  • {condition ? jsx : null}:渲染 null 就是什么都不渲染;元素不是被隐藏了,而是不存在
challenge icon

挑战

中等

制作一个剧透显示功能。

  1. 添加布尔状态 revealed,初始值为 false。
  2. 按钮(id="toggle")每次点击时都会切换它的值。
  3. 显示时,展示一个带有 id="secret" 且文本为 The cake is real 的 <p>;否则渲染 null。

亲手试试

<!DOCTYPE html>
<html>
    <head>
        <link rel="stylesheet" href="styles.css" />
    </head>
    <body>
        <div id="root"></div>
        <script type="module" src="main.jsx"></script>
    </body>
</html>
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课