我们有一个简单的反应应用程序。数据来自 api 并存储在状态中。然后我们使用 map 函数来渲染数据。并使用排序和过滤功能来操作数据。
现在,我们尝试使用查询字符串将过滤器信息与 URL 相关联。因此,在共享页面 URL 时,过滤器数据也会随之传递。
我们正在使用“react-router-dom”库的链接标签更新查询字符串
<Link to='/pagePath?queryStringKey=queryStringValue'> Link Content </Link>
现在,如何监听查询字符串的变化?componentDidMount 仅在安装组件时运行一次。但是,当使用 Link 标记更改查询字符串时,componentDidMount 不会运行。如果我们从渲染函数中监听,那么它会给出这个错误。
Error: Maximum update depth exceeded.
侦听/检测查询字符串更改的正确方法是什么?