Lifted some logic up a level to clean up code.

This commit is contained in:
Håvar Aambø Fosstveit
2019-10-23 11:29:32 +02:00
parent 223642a44f
commit 12dd85a99d
6 changed files with 350 additions and 209 deletions
+56
View File
@@ -0,0 +1,56 @@
import React from 'react';
import { connect } from 'react-redux';
import PropTypes from 'prop-types';
import Room from './Room';
import JoinDialog from './JoinDialog';
import Lobby from './Lobby';
const App = (props) =>
{
const {
room
} = props;
if (room.lockedOut)
{
return (
<Lobby />
);
}
else if (!room.joined)
{
return (
<JoinDialog />
);
}
else
{
return (
<Room />
);
}
}
App.propTypes =
{
room : PropTypes.object.isRequired
};
const mapStateToProps = (state) =>
({
room : state.room
});
export default connect(
mapStateToProps,
null,
null,
{
areStatesEqual : (next, prev) =>
{
return (
prev.room === next.room
);
}
}
)(App);