我试图使用react router 4的URL来确定某个视图数据应该如何排序。
(导航图像)
所以每个导航链接都指向同一个页面,只是在最后更改参数。例如。
/home/:general
/home/比基尼
/家居/内衣
等
这是可行的,但是activeClassName参数被应用于它们
有没有办法使导航链接仅将样式应用于具有精确链接的链接。
路由组件
import React from 'react';
import {Switch, Route, Redirect} from 'react-router';
import Home from './views/home/Home';
const CurrentDash = () => (
<Switch>
<Redirect exact={true} from='/' to='/home/:general' />
<Route path='/home' component={Home} />
</Switch>
);
export default CurrentDash;
一些导航链接的片段
<NavigationLinkWrapper>
<NavigationLink>
<NavLink exact strict to='/home/:bikini' activeClassName='navigation-link--active'>Bikini</NavLink>
</NavigationLink>
</NavigationLinkWrapper>
<NavigationLinkWrapper>
<NavigationLink>
<NavLink exact strict to='/home/:lingerie' activeClassName='navigation-link--active'>Lingerie</NavLink>
</NavigationLink>
</NavigationLinkWrapper>
<NavigationLinkWrapper>
<NavigationLink>
<NavLink exact strict to='/home/:makeup' activeClassName='navigation-link--active'>Makeup</NavLink>
</NavigationLink>
</NavigationLinkWrapper>
我知道这正在发生,因为这是在 /home的路线,所有的链接认为他们会显示,但我想如果我包括确切和严格的参数,他们会显示特定的导航项目。我应该用另一种方式来解决这个问题吗?
您必须使用此链接方法synatx my friend来设置动态路由
<NavigationLinkWrapper>
<NavigationLink>
<NavLink exact strict to={`/home/${data.id}`} activeClassName='navigation-link--active'>Lingerie</NavLink>
</NavigationLink>
</NavigationLinkWrapper>
在以下React应用程序中,有两个路由URLhttp://myapp 正确布线到布局构件。但是,URLhttp://myapp/login 也路由到布局组件,而不是登录。如果我将path=“/login”更改为“/sign”,它将正确路由到登录组件。 React路由器中的“/login”路径将其路由到路由是否有特殊之处?或者我设置这个路由的方式有错误吗?
I my app.js我已将路线定义为: 在我的中,我有一个链接: 但问题是,当我在aboue path中设置prop'确切={true}时,找不到这个路径 当我没有在上面的路径中设置exact={true}时,在同一页面上呈现路径组件及其下方的路径组件
我读了这个文件关于反应路由器交换机 我理解交换机和路由的定义 但有些地方还是不能理解 如果我只想选择一条路径进行渲染,我们可以使用如下开关 我不明白的一点是,我可以在没有开关的情况下获得同样的效果 那么,我们为什么要使用交换机呢?我们什么时候需要使用开关? 我发现一个需要使用开关的情况 如果我想在没有路径匹配时呈现特定的组件 我们需要像这样包装路由开关 我说得对吗?
考虑以下事项: 我有一个应用模板,一个HeaderTemboard,和参数化的路由集与相同的处理程序(在应用模板)。我希望在没有找到东西的时候能够服务404路线。例如, /CA/SanFrancisco应该由区域查找和处理,而 /SanFranciscoz应该是404。 下面是我如何快速测试路线的。 问题是 /SanFranciscoz总是由区域页面处理,但我希望它是404。此外,如果我向第一个路
问题内容: 我需要react-router v2 +的帮助,例如,当路由更改时,我必须更改navbar的类,因为它将 尝试在navbar组件中使用,但它显示 希望你的帮助 问题答案: 您的组件(如您在问题中所描述的)可能不是路由组件,对吗?通过我的意思是你在使用一个被加载特定路由配置。 仅可通过此类访问,因此您需要将其传递给您。 让我们举个例子: 您的路由器配置: 路线部分:
问题内容: 我正在使用React Router。我想检测我来自何处的上一页(在同一应用程序内)。我在上下文中拥有路由器。但是,我在路由器对象上看不到“上一条路径”或历史记录之类的任何属性。我该怎么做? 问题答案: 您可以在生命周期方法中保存先前的路径。该逻辑非常接近文档的疑难解答部分中提供的示例。 最近,可以从州访问它。