我正在尝试使用react-router,但是当我写一条简单的路由不起作用并且控制台显示Uncaught TypeError:无法读取未定义的属性“ toUpperCase”时。
否则当我在没有反应路由器的情况下使用时效果很好
var React = require('react'); var ReactRouter = require('react-router'); var Router = ReactRouter.Router; var Route = ReactRouter.Route; var App = React.createClass({ render: function () { return ( <div>Hello World</div> ); } }); React.render(( <Router> <Route path="/" component={App} /> </Router> ), document.body);
错误来自反应库的这一行
function autoGenerateWrapperClass(type) { return ReactClass.createClass({ tagName: type.toUpperCase(), //<---- render: function() { return new ReactElement( type, null, null, null, null, this.props ); } }); }
您正在使用1.0 Beta文档中的示例,但您可能正在运行最新的稳定版本(0.13)。master中的文档来自1.0 Beta,这就是造成混乱的原因。
阅读文档以获取最新的稳定版本:https : //github.com/ReactTraining/react- router/tree/master/docs