📅  最后修改于: 2023-12-03 15:24:22.033000             🧑  作者: Mango
在 ReactJS 中创建 Switch 不仅能够实现开关的功能,还能够为整个界面增添美观。下面介绍如何在 ReactJS 中创建 Switch。
React-Bootstrap 是一个基于 Bootstrap 的 React 组件库。其中包含了一个 Switch 组件,可以方便地在 React 中使用。以下是一个例子:
import React, { useState } from "react";
import Switch from "react-bootstrap/Switch";
import Form from "react-bootstrap/Form";
function App() {
const [isOn, setIsOn] = useState(true);
const handleSwitchChange = () => {
setIsOn(!isOn);
};
return (
<Form>
<Form.Group controlId="formSwitch">
<Form.Label>Toggle Switch</Form.Label>
<Switch
label="Toggle me"
onChange={handleSwitchChange}
checked={isOn}
/>
</Form.Group>
</Form>
);
}
export default App;
在上面的例子中,我们首先引入了 Switch
和 Form
组件。接着定义了一个名为 App 的组件,定义了一个 isOn
状态和一个 handleSwitchChange
处理函数,用来监听 Switch 的值变化。在 JSX 中,我们使用 Switch
组件,传入 checked
属性和 onChange
函数,从而实现了 Switch 的使用。
Material-UI 是一个基于 Material Design 的 React 组件库。其中包含了一个 Switch 组件,也可以方便地在 React 中使用。
import React, { useState } from "react";
import { Switch } from "@material-ui/core";
function App() {
const [isOn, setIsOn] = useState(false);
const handleSwitchChange = (event) => {
setIsOn(event.target.checked);
};
return (
<div className="App">
<Switch checked={isOn} onChange={handleSwitchChange} />
</div>
);
}
export default App;
在上面的例子中,我们首先引入了 Switch
组件。接着定义了一个名为 App 的组件,定义了一个 isOn
状态和一个 handleSwitchChange
处理函数,用来监听 Switch 的值变化。在 JSX 中,我们使用 Switch
组件,传入 checked
属性和 onChange
函数,从而实现了 Switch 的使用。
如果以上组件库中的 Switch 不能满足你的需求,你也可以根据自己的需要自定义 Switch。
import React, { useState } from "react";
import "./Switch.css";
function App() {
const [isOn, setIsOn] = useState(false);
const handleSwitchChange = () => {
setIsOn(!isOn);
};
return (
<div className="App">
<div className={`Switch ${isOn ? "on" : "off"}`} onClick={handleSwitchChange}>
<div className="Switch-trigger">
<div className={`Switch-ball ${isOn ? "on" : "off"}`}></div>
</div>
</div>
</div>
);
}
export default App;
在上面的例子中,我们定义了一个名为 App 的组件,并在其状态中定义了一个 isOn
状态。我们在 JSX 中定义了一个 Switch
组件,绑定一个点击事件和一个 CSS 类名来改变 Switch 的样式。最终通过自定义 CSS 样式来实现 Switch 的样式。
以上是如何在 ReactJS 中创建 Switch 的介绍。你可以根据自己的需求选择以上任何一种方式来实现简单或高度自定义的 Switch 组件。