流星/反应路由器:错误消息“没有定义路由”

时间:2018-04-04 10:05:02

标签: reactjs meteor react-router-v4 react-router-dom

不幸的是,我无法让React Router在我的自定义流星样板中工作,我真的无法弄清楚原因。以下是可能与问题相关的所有文件:

\客户\ main.js:

import { Meteor } from 'meteor/meteor';
import { render } from 'react-dom';
import { renderRoutes } from '../imports/startup/client/routes.jsx';

Meteor.startup(() => {
  render(renderRoutes(), document.getElementById('app'));
});

\进口\启动\客户\ routes.jsx:

import React from 'react';
import { BrowserRouter as Router, Route } from 'react-router-dom';

// route components
import App from '../../ui/App.jsx';

export const renderRoutes = () => (
  <Router>
    <div>
      <Route path="/" component={App} />
    </div>
  </Router>
);

\进口\ UI \ App.jsx

import React from 'react';
import { withTracker } from 'meteor/react-meteor-data';

class App extends React.Component {
  constructor(props) {
    super(props);
  }

  render() {
    return (
      <h1>Hey!</h1>
    );
  }
}

export default withTracker(() => {
  return {
  };
})(App);

知道错误消息可能出现的原因吗?谢谢!

1 个答案:

答案 0 :(得分:0)

不知道你使用的是什么版本的流星并做出反应,但是我在上一个项目中是如何做到的。

尝试此更改:

import {Router, Route, browserHistory} from 'react-router';

export const renderRoutes = () => (
  <Router history={browserHistory}>
    <div>
      <Route path="/" component={App} />
    </div>
  </Router>
);