Skip to content

Commit

Permalink
minimal redirect and uuid in url
Browse files Browse the repository at this point in the history
  • Loading branch information
Ch4s3 committed Sep 6, 2017
1 parent 1e2e3c0 commit 20c5140
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 21 deletions.
5 changes: 3 additions & 2 deletions deck-js/src/components/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { Router } from 'preact-router';
import Header from './header';
import Home from '../routes/home';
import Brewer from '../routes/brewer';
import Redirect from '../routes/redirect';
// import Home from 'async!./home';
// import Brewer from 'async!./brewer';

Expand All @@ -23,8 +24,8 @@ export default class App extends Component {
<Header />
<Router onChange={this.handleRoute}>
<Home path="/" />
<Brewer path="/brewer/" user="me" />
<Brewer path="/brewer/:user" />
<Redirect path="/brewer" to="/" />
<Brewer path="/brewer/:uuid" />
</Router>
</div>
);
Expand Down
1 change: 1 addition & 0 deletions deck-js/src/components/beer_list/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ export default class BeerList extends Component {
background: 'rgba(250,250,250,0.5)',
boxShadow: '0 1px 5px rgba(0,0,0,0.5)',
};

return (
<div>
{beers.map(beer => (
Expand Down
2 changes: 0 additions & 2 deletions deck-js/src/components/header/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@ export default class Header extends Component {
<h1>On Deck</h1>
<nav>
<Link activeClassName={style.active} href="/">Home</Link>
<Link activeClassName={style.active} href="/brewer">Me</Link>
<Link activeClassName={style.active} href="/brewer/john">John</Link>
</nav>
</header>
);
Expand Down
19 changes: 2 additions & 17 deletions deck-js/src/routes/brewer/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,11 @@ import style from './style';

export default class Brewer extends Component {
state = {
time: Date.now(),
userName: "",
beerCount: 0,
beers: [],
};

// update the current time
updateTime = () => {
this.setState({ time: Date.now() });
};

parseData = (data) => {
const user = data.user
this.setState({
Expand Down Expand Up @@ -58,7 +52,7 @@ export default class Brewer extends Component {
`;

const variables = {
id: this.props.user,
id: this.props.uuid,
onTap: true,
};

Expand All @@ -71,23 +65,14 @@ export default class Brewer extends Component {
console.log(error)
//respond to a network error
});
// start a timer for the clock:
this.timer = setInterval(this.updateTime, 1000);
}

// gets called just before navigating away from the route
componentWillUnmount() {
clearInterval(this.timer);
}

// Note: `user` comes from the URL, courtesy of our router
render({ user }, { time, userName, beerCount, beers }) {
render({uuid}, {userName, beerCount, beers }) {
return (
<div class={style.brewer}>
<h1>Brewer: {userName}</h1>
<p>This is the brewer profile for a user named {userName}.</p>

<div>Current time: {new Date(time).toLocaleString()}</div>
<div>beers on tap: {beerCount}</div>
<BeerList beers={beers}/>
</div>
Expand Down
12 changes: 12 additions & 0 deletions deck-js/src/routes/redirect.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import { Component } from 'preact';
import { route } from 'preact-router';

export default class Redirect extends Component {
componentWillMount() {
route(this.props.to);
}

render() {
return null;
}
}

0 comments on commit 20c5140

Please sign in to comment.