ReactJS Router - React.createElement:type无效

时间:2017-02-15 21:34:05

标签: javascript reactjs react-router

我正在努力让ReactRouter设置为使用ReactJS构建单页应用程序。我遇到了设置路由器的问题。

未捕获错误:元素类型无效:期望一个字符串(对于内置组件)或一个类/函数(对于复合组件)但得到:object。

这是我的代码。

'use strict';

const React = require('react');
const ReactDOM = require('react-dom')
const ReactRouter = require('react-router')
const when = require('when');

class App extends React.Component {

    constructor(props) {
        super(props);
    }

    render() {
        return (
            <div className="container">
                <h1>TEST</h1>
            </div>
        )
    }
}

class Test extends React.Component {
    render() {
        return (
            <div className="container">
                <h1>TEST PAGE</h1>
            </div>
        )
    }
}

var Router = ReactRouter;
var DefaultRoute = Router.DefaultRoute;
var Route = Router.Route;
var RouteHandler = Route.RountHandler;

var routes = (
    <Route name="root" handler="{App}" path="/">
        <Route handler={Test} path="test" />
    </Route>
)

ReactDOM.render(<Router>{routes}</Router>, document.getElementById('react'))

1 个答案:

答案 0 :(得分:0)

如果您正在使用react-router v1.0或更高版本,则不推荐使用handler。请尝试使用component

var routes = (
    <Route name="root" component="{App}" path="/">
        <Route component={Test} path="test" />
    </Route>
)

以下是引用RouteHandler

的升级指南