Skip to content

Instantly share code, notes, and snippets.

@alexroan
Created April 2, 2020 10:19
Show Gist options
  • Save alexroan/4cb6cabdbef915d1c5ec1cf85832abc2 to your computer and use it in GitHub Desktop.
Save alexroan/4cb6cabdbef915d1c5ec1cf85832abc2 to your computer and use it in GitHub Desktop.
PlayerDetails.js@3
import React, {Component} from 'react';
import {connect} from 'react-redux';
import { selectedPlayerDetailsSelector } from './redux/selectors';
const getPlayerDetails = (props) => {
const {playerDetails} = props;
return (
<ul className="list-group list-group-flush">
<li key="xp" className="list-group-item">{playerDetails.xp}</li>
<li key="name" className="list-group-item">{playerDetails.name}</li>
<li key="age" className="list-group-item">{playerDetails.age}</li>
<li key="height" className="list-group-item">{playerDetails.height}</li>
<li key="condition" className="list-group-item">{playerDetails.condition}</li>
<li key="agility" className="list-group-item">{playerDetails.agility}</li>
<li key="power" className="list-group-item">{playerDetails.power}</li>
<li key="stamina" className="list-group-item">{playerDetails.stamina}</li>
<li key="technique" className="list-group-item">{playerDetails.technique}</li>
</ul>
);
}
class PlayerDetails extends Component {
render() {
return (
<div className="col-4">
<div className="card">
<div className="card-header">
Player Details
</div>
{this.props.playerDetails ? getPlayerDetails(this.props) : <p>No Details</p>}
</div>
</div>
);
}
}
function mapStateToProps(state){
return {
playerDetails: selectedPlayerDetailsSelector(state)
}
}
export default connect(mapStateToProps)(PlayerDetails);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment