Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
   <meta charset="utf-8">
  <title>JS Bin</title>
  <script src="https://fb.me/react-0.14.7.min.js"></script>
  <script src="https://fb.me/react-dom-0.14.7.min.js"></script>
  <script src="https://unpkg.com/switcheroo@3.2.0"></script>
</head>
<body>
  <div id="app"></div>
</body>
</html>
 
const Switcher = switcheroo.default;
const SwitcherProvider = switcheroo.SwitcherProvider;
class App extends React.Component {
  render() {
    return (
      <div>
        <NavBar />
        <Content />
        <MoreContent />
      </div>
    );
  }
}
class NavBar extends React.Component {
  render() {
    return (
      <ul>
        <li><a href="#/route1">Route 1</a></li>
        <li><a href="#/route2">Route 2</a></li>
        <li><a href="#/route3">Route 3</a></li>
        <li><a href="#/route3">Route 4</a></li>
        <li><a href="#/dynamicSegment/helloWorld">Dynamic Segment of Hello World</a></li>
       <li><a href="#/dynamicSegment/2">Dynamic Segment of 2</a></li>
      </ul>
    );
  }
}
function Content() {
  return (
    <Switcher>
      <div path="/route1">Content: Route 1</div>
      <div path="/route2">Content: Route 2</div>
      <div path={["/route3", "/route4"]}>Content: Route 3 or 4</div>
    </Switcher>
  );
}
function DynamicSegmentContent(props) {
  return (
    <div>
      More Content: Dynamic Value = {props.someValue}
    </div>
  );
}
function MoreContent(props) {
  return (
    <Switcher>
      <div path="/route2">More Content: Route 2</div>
      <div path="/route4">More Content: Route 4</div>
      <DynamicSegmentContent path="/dynamicSegment/:someValue" />
      <div path="/.*">More Content: Default</div>
    </Switcher>
  );
}
ReactDOM.render(<App />, document.getElementById('app'));
Output

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
jdlehmanpro
0viewers