栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

反应:在特定路线上隐藏组件

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

反应:在特定路线上隐藏组件

我也是React的新手,但是遇到了这个问题。

react-router
可接受答案的一个基本替代方法是use
withRouter
,它包装了您要隐藏的组件并为其提供了
location
prop(以及其他)。

import { withRouter } from 'react-router-dom';    const ComponentToHide = (props) => {  const { location } = props;  if (location.pathname.match(/routeOnWhichToHideIt/)){    return null;  }  return (    <ComponentToHideContent/>  )}const ComponentThatHides = withRouter(ComponentToHide);

请注意,尽管来自文档的警告:

withRouter不像React
Redux的connect那样订阅位置更改以进行状态更改。而是在位置更改后从组件传播出来,然后重新渲染。这意味着withRouter不会在路由转换时重新呈现,除非其父组件重新呈现。

尽管没有这个警告,但对于与OP非常相似的用例,这种方法似乎对我有用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/418079.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号