如何在 ReactJS 中创建 Switch?
ReactJS 是一个用于构建用户界面的流行 JavaScript 库,它提供了一种开发交互式组件的有效方法。切换开关通常用于允许用户在 Web 应用程序中在暗模式和亮模式主题之间切换。切换开关还可用于显示或隐藏页面的特定内容或部分。在本文中,我们将探讨如何使用 ReactJS 创建切换开关。
先决条件
在继续本教程之前,假设您对 ReactJS 有基本的了解,并且已经安装了 Node.js 和 npm 的开发环境。
设置 React 应用程序并安装所需的库
首先,让我们使用 Create React App 创建一个新的 React 应用程序。打开命令提示符并运行以下命令:
npx create-react-app toggle-slider-switch
此命令将创建一个名为 toggle-slider-switch 的新目录并在其中设置一个基本的 React 应用程序。要导航到项目目录,请输入以下命令。
cd toggle-slider-switch
第 2 步:创建 ToggleSlider 组件
在项目的 src 目录中,创建一个名为 ToggleSlider.js 的新文件。此文件将包含我们的切换滑块组件代码。在您首选的文本编辑器中打开 ToggleSlider.js 文件并添加以下代码:
示例
在下面的代码中,我们从 React 导入 useState 钩子,这使我们能够处理功能组件中的状态。我们定义一个 ToggleSlider 组件,该组件使用 checked 变量来维护开关的状态。handleToggle 函数负责在单击开关时更新状态。
import React, { useState } from 'react';
import './ToggleSlider.css';
const ToggleSlider = () => {
const [checked, setChecked] = useState(false);
const handleToggle = () => {
setChecked(!checked);
};
return (
<div className="toggle-slider">
<input
type="checkbox"
id="toggle"
checked={checked}
onChange={handleToggle}
/>
<label htmlFor="toggle" className="slider" />
</div>
);
};
export default ToggleSlider;
步骤 3:设置切换滑块的样式
在同一目录 (src) 中创建一个名为 ToggleSlider.css 的新文件。添加以下 CSS 代码来设置切换滑块的样式:
示例
在下面的代码中,CSS 代码设置切换滑块的样式,包括开关及其滑块手柄。input[type='checkbox'] 被隐藏,我们使用标签来触发切换效果。
.toggle-slider {
position: relative;
width: 60px;
height: 34px;
}
.slider {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ccc;
border-radius: 34px;
cursor: pointer;
transition: 0.4s;
}
.slider:before {
position: absolute;
content: '';
height: 26px;
width: 26px;
left: 4px;
bottom: 4px;
background-color: white;
border-radius: 50%;
transition: 0.4s;
}
input[type='checkbox'] {
display: none;
}
input[type='checkbox']:checked + .slider {
background-color: #2196f3;
}
input[type='checkbox']:checked + .slider:before {
transform: translateX(26px);
}
步骤 4:实现 ToggleSlider 组件
接下来,让我们修改 src 目录中的 App.js 文件以包含我们的 ToggleSlider 组件。打开 App.js 文件并使用以下代码更新其内容
示例
在下面的代码中,我们导入 ToggleSlider 组件并在 App 组件中呈现它。这将在屏幕上显示我们的切换滑块。
import React from 'react';
import ToggleSlider from './ToggleSlider';
const App = () => {
return (
<div className="app">
<h1>Toggle Slider Example
<ToggleSlider />
</div>
);
};
export default App;
第 5 步:运行 React 应用
现在,我们可以运行切换开关应用了。在命令提示符中,确保您位于项目的根目录 (toggle-slider-switch)。运行以下命令启动 React 开发服务器:
编译过程完成后,您的默认浏览器将打开,您应该会在屏幕上看到标题"切换滑块示例"以及切换滑块。
npm start
第 6 步:测试切换滑块
单击切换滑块将切换其状态并更改其外观。ToggleSlider 组件中的初始状态设置为"false",因此当您单击滑块时,它将变为蓝色,表示"true"状态。再次单击它,它将返回到初始状态。
输出
结论
在本文中,我们讨论了如何在 Reactjs 中创建开关。我们介绍了分步过程,包括设置 React 应用程序、创建切换滑块组件、设置滑块样式、实现组件以及运行应用程序。按照本指南操作,您现在应该在 ReactJS 应用程序中拥有一个功能齐全的切换滑块开关,可以进一步自定义并集成到您的项目中。
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

