Javascript 带有Reactstrap和React路由器Dom的活动导航链路

Javascript 带有Reactstrap和React路由器Dom的活动导航链路,javascript,reactjs,react-router,reactstrap,Javascript,Reactjs,React Router,Reactstrap,我正在为我的应用程序构建navbar组件,但activeClassName道具有问题。当我在链接之间更改时,它不会更改任何类或样式。我在网上看到的所有东西都试过了,但都没有结果。也许有人能给我一个关于这个问题的建议 我的进口: import React from 'react'; import { NavLink as RRNavLink } from 'react-router-dom'; import { Nav, NavItem, NavLink } from 'reactstrap';

我正在为我的应用程序构建navbar组件,但activeClassName道具有问题。当我在链接之间更改时,它不会更改任何类或样式。我在网上看到的所有东西都试过了,但都没有结果。也许有人能给我一个关于这个问题的建议

我的进口:

import React from 'react';
import { NavLink as RRNavLink } from 'react-router-dom';
import { Nav, NavItem, NavLink } from 'reactstrap';
这是我目前掌握的代码:

    <Nav className="navbar-logged">
      <NavItem>
        <NavLink
          className="nav-link-gdc"
          activeClassName="active"
          to="/home"
          tag={RRNavLink}
        >
            INICIO
        </NavLink>
      </NavItem>
      <NavItem>
        <NavLink
          className="nav-link-gdc"
          activeClassName="active"
          to="/secondLink"
          tag={RRNavLink}
        >
            secondLink
        </NavLink>
      </NavItem>
      <NavItem>
        <NavLink
          className="nav-link-gdc"
          activeClassName="active"
          to="/thirdLink"
          tag={RRNavLink}
        >
            thirdLink
        </NavLink>
      </NavItem>
    </Nav>

伊尼西奥
第二环
第三链接

谢谢

一个可能的原因是您正在使用Redux来管理应用程序的状态

如果您的视图依赖于全局状态或“上下文”,您可能会 发现使用connect()修饰的视图将无法更新

这是因为默认情况下connect()实现了shouldComponentUpdate, 假设您的组件将在给定 同样的道具和状态。这与React的概念类似 普雷德米辛

最快的(不是最好的)解决方案是传递包含导航链接的组件的pure:false选项connect()函数(在我的例子中,它是标题)

这将消除头部是纯的假设,并使其 每当其父组件渲染时更新。请注意,这将使 您的应用程序性能较差,因此只有在没有其他应用程序的情况下才能执行此操作 选择权


嗨,阿尔贝托,你找到解决办法了吗?我也有同样的问题,我专注于项目的其余部分,但我即将进入最后阶段,所以我将很快面对这个问题。我想这可能与redux有关,但我只是为了说话而说话。如果我找到解决办法我会去找你嘿,我找到了解决办法。在这里选中它,您需要执行类似于导出默认连接的操作(mapStateToProps,null,null,{pure:false})(组件);我的意思是,您需要将{pure:false}添加到拥有navlink的组件的connect函数中您就是那个人!!嘿,如果你愿意,发布解决方案,这样我就可以给你正确的答案
function mapStateToProps(state) {
  return { test: state.test}
}

export default connect(mapStateToProps, null, null, {
  pure: false
})(Header)