Skip to content

Commit 86d3611

Browse files
committed
added rx.js example
1 parent f248a7b commit 86d3611

File tree

4 files changed

+59
-1
lines changed

4 files changed

+59
-1
lines changed

examples/index.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ <h1>React Router Examples</h1>
1212
<li><a href="master-detail/index.html">Master Detail</a></li>
1313
<li><a href="partial-app-loading/index.html">Partial App Loading</a></li>
1414
<li><a href="query-params/index.html">Query Params</a></li>
15+
<li><a href="rx/index.html">Reactive Extensions</a></li>
1516
<li><a href="shared-root/index.html">Shared Root</a></li>
1617
<li><a href="sidebar/index.html">Sidebar</a></li>
1718
<li><a href="simple-master-detail/index.html">Simple Master Detail</a></li>

examples/rx/app.js

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
var React = require('react');
2+
var Router = require('react-router');
3+
var { Route, Redirect, RouteHandler, Link } = Router;
4+
var Rx = require('rx');
5+
6+
var App = React.createClass({
7+
render () {
8+
return (
9+
<div>
10+
<ul>
11+
<li><Link to="user" params={{userId: "123"}}>Bob</Link></li>
12+
<li><Link to="user" params={{userId: "abc"}}>Sally</Link></li>
13+
</ul>
14+
<RouteHandler/>
15+
</div>
16+
);
17+
}
18+
});
19+
20+
var User = React.createClass({
21+
mixins: [ Router.State ],
22+
23+
render () {
24+
var { userId } = this.getParams();
25+
return (
26+
<div className="User">
27+
<h1>User id: {userId}</h1>
28+
</div>
29+
);
30+
}
31+
});
32+
33+
var routes = (
34+
<Route path="/" handler={App}>
35+
<Route name="user" path="/user/:userId" handler={User}/>
36+
</Route>
37+
);
38+
39+
var source = Rx.Observable.fromEventPattern(function(h) {
40+
Router.run(routes, h);
41+
});
42+
43+
source.subscribe(function (Handler) {
44+
React.render(<Handler/>, document.getElementById('example'))
45+
});
46+

examples/rx/index.html

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<!doctype html public "restroom">
2+
<title>Reactive Extenstions Example</title>
3+
<link href="../global.css" rel="stylesheet"/>
4+
<body>
5+
<h1 class="breadcrumbs"><a href="../index.html">React Router Examples</a> / Reactive Extensions</h1>
6+
<div id="example"/>
7+
<script src="/__build__/shared.js"></script>
8+
<script src="/__build__/rx.js"></script>
9+

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
"browserify-shim": "3.6.0",
2626
"bundle-loader": "0.5.1",
2727
"envify": "1.2.0",
28+
"events": "1.0.2",
2829
"expect": "0.1.1",
2930
"jsx-loader": "0.12.0",
3031
"karma": "0.12.16",
@@ -37,6 +38,7 @@
3738
"react": "0.12.x",
3839
"reactify": "0.15.x",
3940
"rf-release": "0.3.2",
41+
"rx": "2.3.18",
4042
"uglify-js": "2.4.15",
4143
"webpack": "1.4.5",
4244
"webpack-dev-server": "1.6.5"
@@ -63,4 +65,4 @@
6365
"browserify-shim": {
6466
"react": "global:React"
6567
}
66-
}
68+
}

0 commit comments

Comments
 (0)