Реагируйте 0.13.x _classCallCheck() в DefaultRoute "Невозможно вызвать класс как функцию"
Я использую React 0.13.3 с Webpack 1.9.5 и traceur-loader 0.6.3 (пробовал babel-loader до этого), получая TypeError с помощью _classCallCheck() в DefaultRoute "Невозможно вызвать класс как функцию". Я не вижу, где я вызываю класс как функцию. Вот как выглядят мои маршруты:
var Application = require('./components/Application');
var Home = require('./components/Home');
var About = require('./components/About');
var MainFeedVideos = require('./components/MainFeedVideos');
var MyUploads = require('./components/MyUploads');
...
var routes = (
//logged out content
<Route flux={flux} handler={Application}>
<DefaultRoute handler={Home} />
<Route name='about' handler={About}/>
...
//logged in content
<Route path='/' name='home' handler={Home}>
<DefaultRoute handler={MainFeedVideos} />
<Route name='my-videos' handler={MyUploads}/>
...
</Route>
</Route>);
Router.run(routes, Router.HistoryLocation, function (Handler) {
React.render(<Handler/>, document.getElementById('content'));
});
У кого-нибудь была эта проблема раньше?
1 ответ
Оказывается, я использовал старый this.props.activeRouteHandler()
вместо <RouteHandler/>
в моих компонентах Application и Home, которые являются маршрутами верхнего уровня. Doh.
Примеры правильного синтаксиса здесь http://rackt.github.io/react-router/.