出于某种原因,我从
获得了铬的投诉import React from 'react';
import {Route, DefaultRoute} from 'react-router';
import App from "components/app"
import FindView from "components/find";
import RememberView from "components/remember";
import MetaView from "components/meta";
import ExploreView from "components/explore";
export default (
<Route name='pkm' path='/' handler={App}>
<DefaultRoute handler={RememberView} />
<Route name="remember" handler={RememberView} />
<Route name="find" handler={FindView} />
<Route name="meta" handler={MetaView} />
<Route name="explore" handler={ExploreView} />
</Route>
);
在DefaultRoute行看起来像 React.createElement:type不应为null,undefined,boolean或number。它应该是一个字符串(对于DOM元素)或一个ReactClass(对于复合组件。
我不知道为什么会这样。我在ES6使用中看到的所有路由器示例都与此类似。我错过了什么?
当我试图运行它时,我发现它不知道路由器是什么?
import React from 'react';
import ReactDOM from 'react-dom'
import Router from 'react-router';
import routes from './routes';
import App from 'components/app'
Router.run(routes, Router.HistoryLocation, (App, state) => {
ReactDOM.render(<App {...state}/>, document.getElementById('content'));
});
module.js:8Uncaught TypeError:无法读取属性&#39;运行&#39;未定义的。
所以我显然没有得到什么。
答案 0 :(得分:0)
您使用的是哪种版本的react-router?在最新版本中,路由器模块没有定义运行功能。
在最新版本中,配置如下
ReactDOM.render(
<Router routes={routes} />
, document. getElementById('content'))
有关详细信息,请参阅documentation
答案 1 :(得分:0)
是。我是在一个更新的版本。我根据反应路由器文档的github重新编写代码并解决了问题。