【发布时间】:2016-07-31 15:38:10
【问题描述】:
我无法正确导入 RouteHandler。这是我的代码:
var React = require('react');
var ReactDOM = require('react-dom');
var ReactRouter = require('react-router');
var ActivityView = require('./ActivityView');
var Router = ReactRouter.Router;
var Route = ReactRouter.Route;
var Link = ReactRouter.Link;
var RouteHandler = ReactRouter.RouteHandler;
var hashHistory = ReactRouter.hashHistory;
var IndexRoute = ReactRouter.IndexRoute;
var App = React.createClass({
render: function() {
return (
<div>
<div className="navbar navbar-default">
<ul className="nav navbar-nav navbar-right">
<li><Link to="app">Dashboard</Link></li>
</ul>
</div>
<RouteHandler />
</div>
);
}
});
ReactDOM.render(
<Router history={hashHistory}>
<Route name="app" path="/" component={App}>
<IndexRoute component={ActivityView} />
</Route>
</Router>,
document.getElementById('content')
);
我不断收到错误:
警告:React.createElement:类型不应为 null、未定义、布尔值或数字。它应该是一个字符串(对于 DOM 元素)或一个 ReactClass(对于复合组件)。检查
App的渲染方法。
如果我删除<RouteHandler />,这个警告就会消失并且导航栏会呈现。我是不是在这里错误地导入了 RouteHandler?
【问题讨论】:
-
即使我在寻找相同的解决方案,也偶然发现了这个:github.com/reactjs/react-router/blob/master/upgrade-guides/…
标签: javascript reactjs