反应路径网址并查看更改但组件功能仍处于活动状态。为什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了反应路径网址并查看更改但组件功能仍处于活动状态。为什么?相关的知识,希望对你有一定的参考价值。

我有一个由按钮点击触发的事件功能。它的目的是保持身体位置固定,防止滚动,直到再次单击按钮关闭/关闭它。

它工作正常但是,当我点击其他页面而不切换它时它仍然是活动的。这意味着新页面将不会滚动,因为正文位置是固定的。

我是React FYI的新手

我的代码:

bodyFixed(event) {
  document.body.classList.add('body-fixed');
}

bodyRelative(e) {
  document.body.classList.remove('body-fixed');
}

我正在使用react-static withRouteData, RouteData, Router,我在这些页面上没有任何问题。但是,在类似于文章页面的页面上,路径不会以相同的方式改变。这是我看到问题的地方。

有什么我可以包装它,以便当我点击一个新的页面,它会回到默认状态?

请先询问您是否需要更多信息,我很乐意添加更多信息。

答案

是的,您可以在bodyRelative生命周期钩子中调用componentWillUnmount方法来取消该类。这些方面的东西:

  componentWillUnmount() {
    this.bodyRelative()
  }

以上是关于反应路径网址并查看更改但组件功能仍处于活动状态。为什么?的主要内容,如果未能解决你的问题,请参考以下文章

设置复杂的反应内联样式,例如悬停,在反应组件(例如按钮)上处于活动状态

存在-db restxq 触发器:服务已删除但仍处于活动状态

反应路由器更改链接网址但不显示组件

网站处于联机状态,但未对联机尝试做出反应。

反应路由器:链接更改网址但不加载组件

在反应中使用 useState 更改 div 的背景