【问题标题】:useRef Did not change the element style in ReactuseRef 没有改变 React 中的元素样式
【发布时间】:2021-07-27 13:36:09
【问题描述】:

好的,我正在尝试将切换显示元素从隐藏切换到阻止,反之亦然,并将其绑定到按钮。

我使用useRef,它有点工作,但只有一次,它不会在元素显示被阻止后再次切换。

这是我使用的代码。

const handleMobileMenu = () => {
setIsPressed(!isPressed);
const state = isPressed ? "flex" : "hidden";
mobileMenu.current.style.display = state;
console.log(state); 
};

显示我想要的内容的控制台日志是块、隐藏、块、隐藏......它的切换。但元素没有。

我试过使用,如果没有,但同样的问题。

【问题讨论】:

  • 请在任何沙箱中创建一个可重现的示例How to create a Minimal, Reproducible Example。我的猜测是您应用 ref 样式的组件只是重新安装。无论如何,这不是在 React 中应用动态样式的推荐方法,请参阅 styles 道具,或者只是在 className 上添加条件
  • 在这种特殊情况下,它是媒体查询的一个用例。
  • 哦,是的,我很抱歉没有遵循可重现的示例,这是我第一次问。好的,我会试试类名的条件

标签: reactjs use-ref


【解决方案1】:

是的,我很傻,只需使用条件类名,问题就解决了。

谢谢丹尼斯·瓦什

【讨论】:

    猜你喜欢
    • 2016-05-08
    • 2019-12-19
    • 1970-01-01
    • 2016-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-26
    相关资源
    最近更新 更多