如何为组件 class 使用 reactjs 状态?
How can I use reactjs state for component class?
我有一个侧边栏组件,并且在 React 中准备了 css(.sidebar.active
是 class 每当显示侧边栏时):
export default function Sidebar() {
return (
<div className="sidebar">This is a sidebar</div>
)
}
我想在 React 中保存边栏为 toggled/active 的状态,因为这不是 class 我将不得不使用 useState
钩子,对吗?所以它可能看起来像这样:
export default function Sidebar() {
const [toggled, setToggled] = useState();
return (
<div className="sidebar">This is a sidebar</div>
)
}
如何动态地add/remove .active
class?我正在考虑添加额外的字符串,例如:
<div className="sidebar {toggled}">This is a sidebar</div>
所以 toggled
是空字符串或 active
。什么是正确的方法?有没有一种方法可以让我从 DOM 元素的 classList
动态地 add/remove class?提前致谢!
您可以使用 Ternary Operator 切换班级列表。
export default function Sidebar() {
const [toggled, setToggled] = useState(false);
return (
<div className={toggled ? "sidebar active" : "sidebar"}>This is a sidebar</div>
)}
我有一个侧边栏组件,并且在 React 中准备了 css(.sidebar.active
是 class 每当显示侧边栏时):
export default function Sidebar() {
return (
<div className="sidebar">This is a sidebar</div>
)
}
我想在 React 中保存边栏为 toggled/active 的状态,因为这不是 class 我将不得不使用 useState
钩子,对吗?所以它可能看起来像这样:
export default function Sidebar() {
const [toggled, setToggled] = useState();
return (
<div className="sidebar">This is a sidebar</div>
)
}
如何动态地add/remove .active
class?我正在考虑添加额外的字符串,例如:
<div className="sidebar {toggled}">This is a sidebar</div>
所以 toggled
是空字符串或 active
。什么是正确的方法?有没有一种方法可以让我从 DOM 元素的 classList
动态地 add/remove class?提前致谢!
您可以使用 Ternary Operator 切换班级列表。
export default function Sidebar() {
const [toggled, setToggled] = useState(false);
return (
<div className={toggled ? "sidebar active" : "sidebar"}>This is a sidebar</div>
)}