Skip to content

Commit df38294

Browse files
committed
[fixed] Allow comments in JSX config
Fixes #672
1 parent fa16383 commit df38294

File tree

3 files changed

+38
-15
lines changed

3 files changed

+38
-15
lines changed

modules/__tests__/Router-test.js

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -830,20 +830,6 @@ describe('Router.run', function () {
830830
});
831831
});
832832

833-
it('does not break on falsy routes', function (done) {
834-
var routes = [
835-
<Route handler={Foo} path="/foo"/>,
836-
null,
837-
<Route handler={Bar} path="/bar"/>,
838-
undefined
839-
];
840-
Router.run(routes, '/foo', function (Handler, state) {
841-
var html = React.renderToString(<Handler/>);
842-
expect(html).toMatch(/Foo/);
843-
done();
844-
});
845-
});
846-
847833
it('matches nested routes', function (done) {
848834
var routes = (
849835
<Route handler={Nested} path='/'>
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
var expect = require('expect');
2+
var React = require('react');
3+
var Router = require('../index');
4+
var Route = require('../components/Route');
5+
var { Foo, Bar, Nested } = require('../utils/TestHandlers');
6+
7+
describe('creating routes from ReactChildren', function () {
8+
it('works with falsy children', function (done) {
9+
var routes = [
10+
<Route handler={Foo} path="/foo"/>,
11+
null,
12+
<Route handler={Bar} path="/bar"/>,
13+
undefined
14+
];
15+
16+
Router.run(routes, '/foo', function (Handler, state) {
17+
var html = React.renderToString(<Handler/>);
18+
expect(html).toMatch(/Foo/);
19+
done();
20+
});
21+
});
22+
23+
it('works with comments', function (done) {
24+
var routes = [
25+
<Route handler={Nested} path="/foo">
26+
// This is a comment.
27+
<Route handler={Bar} path="/bar"/>
28+
</Route>
29+
];
30+
31+
Router.run(routes, '/bar', function (Handler, state) {
32+
var html = React.renderToString(<Handler/>);
33+
expect(html).toMatch(/Bar/);
34+
done();
35+
});
36+
});
37+
});

modules/createRoutesFromReactChildren.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ function createRoutesFromReactChildren(children, parentRoute, namedRoutes) {
149149

150150
React.Children.forEach(children, function (child) {
151151
// Exclude null values, <DefaultRoute>s and <NotFoundRoute>s.
152-
if (child && (child = createRoute(child, parentRoute, namedRoutes)))
152+
if (React.isValidElement(child) && (child = createRoute(child, parentRoute, namedRoutes)))
153153
routes.push(child);
154154
});
155155

0 commit comments

Comments
 (0)