【发布时间】:2018-05-22 06:13:33
【问题描述】:
我在我的 React 项目中制作了一个模态框,它需要在模态框打开时将一个类添加到正文中,并在它关闭时将其删除。
我可以通过运行一些添加/删除类的 vanilla JavaScript 来执行旧的 jQuery 方法,但这并不像正常的 React 哲学。
我应该改为在我的顶级组件上设置状态来说明模式是打开还是关闭?即使我这样做了,因为它被渲染到页面上的 div 中,它仍然是编辑 body 元素的副作用,那么这种额外的布线有什么好处吗?
【问题讨论】:
-
拥有一个顶级容器而不是直接操作body标签可能会有所帮助。
-
我更喜欢
some vanilla javascript,你可以在componentDidMount中添加类并在componentWillUnmount中删除,mousewheel是全局的而不是React philosophy,你仍然使用它