我有这段代码:
import { Router, Route } from 'react-router'
render((
<Router>
<Route path="/" component={ App }>
<Route path="page1" component={ Page1 }/>
<Route path="page2" component={ Page2 }/>
<Route path="page3" component={ Page3 }/>
</Route>
</Router>
), document.getElementById('app-container'));
使用webpack和babeljs编译后,谷歌浏览器显示错误:
Warning: React.createElement: type should not be null, undefined, boolean, or number. It should be a string (for DOM elements) or a ReactClass (for composite components).
Uncaught Error: Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined.
正如我想的那样,原因是路由器不会被导出为'react-router'的属性,因此路由器组件是'undefined'
我使用react-router版本0.13.5。正确使用它的方法是什么?
答案 0 :(得分:0)
这是对v0.13.x和v1.0.0预发行版之间的React Router API的更改。这只是你使用的代码,例如1.0.0-rc1 API,但没有使用不同的v0.13.x API。