0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2026-01-13 13:02:45 +00:00

Fixed bug where new page loaded null brews sometimes

This commit is contained in:
Scott Tolksdorf
2017-01-12 01:25:30 -05:00
parent 07f249b23e
commit 894e345a44
3 changed files with 7 additions and 9 deletions

View File

@@ -14,13 +14,6 @@ const NewPage = require('./pages/newPage/newPage.jsx');
//const ErrorPage = require('./pages/errorPage/errorPage.jsx'); //const ErrorPage = require('./pages/errorPage/errorPage.jsx');
const PrintPage = require('./pages/printPage/printPage.jsx'); const PrintPage = require('./pages/printPage/printPage.jsx');
const mapObject = (names, obj) => {
return _.reduce(names, (r, name) => {
if(obj[name]) r[name] = obj[name];
return r;
}, {});
};
let Router; let Router;
const Homebrew = React.createClass({ const Homebrew = React.createClass({
getDefaultProps: function() { getDefaultProps: function() {

View File

@@ -16,7 +16,8 @@ const KEY = 'homebrewery-new';
const NewPage = React.createClass({ const NewPage = React.createClass({
componentDidMount: function() { componentDidMount: function() {
try{ try{
Actions.setBrew(JSON.parse(localStorage.getItem(KEY))); const storedBrew = JSON.parse(localStorage.getItem(KEY));
if(storedBrew && storedBrew.text) Actions.setBrew(storedBrew);
}catch(e){} }catch(e){}
Store.updateEmitter.on('change', this.saveToLocal); Store.updateEmitter.on('change', this.saveToLocal);
document.addEventListener('keydown', this.handleControlKeys); document.addEventListener('keydown', this.handleControlKeys);

View File

@@ -45,7 +45,11 @@ const APIActions = {
const Actions = { const Actions = {
init : (initState) => { init : (initState) => {
Store.init(initState); const filteredState = _.reduce(initState, (r, val, key) => {
if(typeof val !== 'undefined') r[key] = val;
return r;
}, {});
Store.init(filteredState);
}, },
setBrew : (brew) => { setBrew : (brew) => {
dispatch('SET_BREW', brew); dispatch('SET_BREW', brew);