Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 默认值不显示活动的React Router UrlParameter_Reactjs_React Router V4_React Bootstrap_React Router Redux - Fatal编程技术网

Reactjs 默认值不显示活动的React Router UrlParameter

Reactjs 默认值不显示活动的React Router UrlParameter,reactjs,react-router-v4,react-bootstrap,react-router-redux,Reactjs,React Router V4,React Bootstrap,React Router Redux,我有一个竞赛结果应用程序,它有一个导航栏,显示一个“所有结果”Nav.Link选项以显示所有结果,还有一个“添加结果”Nav.Link选项以允许您输入结果。问题是,如果我直接点击“添加结果”链接,它应该将其视为一个我输入比赛号码并在条目中查找的链接,但是如果我在结果页面中,并且我在那里单击了一个条目,它应该转到“添加结果”页面,其中填充了所有条目信息 我在我的路由中使用了一个Url参数,所以当你点击“所有结果”链接时,它会转到/result/0,但在“所有结果”表中,如果你点击一个条目,它会执行

我有一个竞赛结果应用程序,它有一个导航栏,显示一个“所有结果”
Nav.Link
选项以显示所有结果,还有一个“添加结果”
Nav.Link
选项以允许您输入结果。问题是,如果我直接点击“添加结果”链接,它应该将其视为一个我输入比赛号码并在条目中查找的链接,但是如果我在结果页面中,并且我在那里单击了一个条目,它应该转到“添加结果”页面,其中填充了所有条目信息

我在我的路由中使用了一个Url参数,所以当你点击“所有结果”链接时,它会转到
/result/0
,但在“所有结果”表中,如果你点击一个条目,它会执行
分派(推送('/result/'+id))

所有这些的唯一问题是,当它跟随
/result/999999
链接时,它不会使匹配的
Nav.link
处于活动状态。当我点击“添加结果”链接到
/result0
时,它就会出现。我假设它只是将当前url与
Nav.Link
s中的url相匹配。我真的必须自己跟踪我在“所有结果”页面并在
Nav.Link
上设置
active
属性,还是路由器可以为我这样做

              <Nav.Link as={NavLink} to='/results' exact>
              All Results
              </Nav.Link>
              <Nav.Link as={NavLink} to='/result/0' exact>
              Add Result
              </Nav.Link>
...
          <Switch>
            <Route path='/' exact component={AllEntriesWrapper} />
            <Route path='/results' exact component={AllResultsWrapper} />
            <Route path='/result/:entryId' exact component={AddResult} />
          </Switch>

所有结果
添加结果
...

为了实现这一点,我做了以下更改

  • 将链接更改为
    ,删除
    0
    参数和
    exact
    关键字
  • 添加了第四条路线,如
  • 确保AddResult组件处理未定义的
    ownProps.match.params.entryId
    的方式与之前处理
    '0'
    的方式相同