javascript - 在 React 中切换暗模式和亮模式

标签 javascript reactjs react-hooks styling

我正在使用 useDarkMode React 中的库。

import useDarkMode from 'use-dark-mode'

const DarkModeToggle = () => {
    const darkMode = useDarkMode(false)
    return (
        <>
            {darkMode ? (
                <button type="button" onClick={darkMode.disable}>
                    ☀
                </button>
            ) : (
                <button type="button" onClick={darkMode.enable}>
                    ☾
                </button>
            )}

        </>
    )
}

我想让按钮在太阳和月亮之间切换,并且能够在暗模式和亮模式之间切换。我似乎无法弄清楚如何做到这一点,我也尝试过使用钩子(Hook)来但没有运气。

最佳答案

基于文档 useDarkMode()返回具有如下属性的对象 value:

value: A boolean containing the current state of dark mode.

所以很可能你可以尝试以下方法:

{darkMode.value ? (
   <button type="button" onClick={darkMode.disable}>
       ☀
   </button>
) : (
   <button type="button" onClick={darkMode.enable}>
       ☾
   </button>
)}

希望对您有所帮助!

关于javascript - 在 React 中切换暗模式和亮模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61695148/

相关文章:

reactjs - 你可以将 Redux 与 Ionic/React 一起使用吗?

reactjs - 使用 Tensorflowjs 对上传的图像进行预测时,React 状态总是落后一步

javascript - JavaScript 接收请求失败错误

javascript - 自动完成——颜色输入建议文本

html - 语义 ui react ,是否可以在两个部分上拆分选项卡?

javascript - 在 usestate hook 中更新状态后,React 不会更改状态(以自定义函数形式)

javascript - 如何将状态从一个组件转移到另一个组件?

javascript - 如何仅在单击时触发一次函数调用 - 我做错了什么?

javascript - 使用javascript控制div可见性样式

javascript - React - 加载页面一次调用所有 onClicks,然后单击按钮不执行任何操作