使用Meteor中的React Router参数导航无法导航

时间:2017-04-05 20:38:12

标签: reactjs meteor react-router

使用导航栏离开无法访问的路径时,我遇到了麻烦。

这是我的导航栏:

enter image description here

当用户点击Search时,会向他们展示我所在国家/地区列出的慈善机构表。 Search页面的路线是:

<Route path="search" component={SearchContainer} />

从表格中,您可以点击特定的慈善机构进入其页面。其路线是:

<Route path="charity/:registeredCharityNumber" component={CharityPageContainer} />

问题是,一旦查看慈善机构,点击导航栏中的任何项目都会导致Web控制台出错:

enter image description here

导航栏之前完美运行,但在您访问慈善页面路线后,您会看到此错误。解决此问题的唯一方法是重新加载浏览器。 单击浏览器调试视图中的错误突出显示(第4行)此代码段:

enter image description here

这就是我的路由器:

export const renderRoutes = () => (
  <Router history={browserHistory}>
    <Route path="/" component={App}>
      <IndexRoute component={HomePageContainer} />
      <Route path="about" component={AboutPage} />
      <Route path="search" component={SearchContainer} />
      <Route path="contact" component={ContactPage} />
      <Route path="thankyou" component={ThankYou} />
      <Route path="charity/:registeredCharityNumber" component={CharityPageContainer} />
    </Route>
  </Router>
);

这是CharityPageContainer:

export default createContainer(( { params: { registeredCharityNumber }} ) => {

  const charNum = parseInt(registeredCharityNumber);
  const subscriptionHandle = Meteor.subscribe('current.charity', charNum);
  console.log('CHARITY OBJECT ',currentCharity(charNum).fetch()[0]);
  const loading = !subscriptionHandle.ready();
  return {
    subscriptionHandle,
    loading,
    charity: currentCharity(charNum).fetch()[0]
  };
}, CharityPage);

这是我的导航栏组件的重要部分:

<Link activeClassName="active" className="item" to="/">Home</Link>
<Link activeClassName="active" className="item" to="/about">About</Link>
<Link activeClassName="active" className="item" to="/search">Search</Link>
<Link activeClassName="active" className="item" to="/contact">Contact</Link>

“反应”:“^ 15.2.1”, “react-router”:“^ 2.6.0”,

0 个答案:

没有答案