CapturedPieces.js 791 B

123456789101112131415161718192021222324252627282930313233343536
  1. 'use strict';
  2. import React from 'react/addons';
  3. import GameStore from '../stores/GameStore';
  4. import onGameChange from '../mixins/onGameChange';
  5. const CapturedPieces = React.createClass({
  6. mixins: [React.addons.PureRenderMixin, onGameChange],
  7. getInitialState() {
  8. return {
  9. capturedPieces: GameStore.getCapturedPieces()
  10. };
  11. },
  12. render() {
  13. const cp = this.state.capturedPieces;
  14. return (
  15. <div id="captured-pieces">
  16. {cp.map((pieces, color) => (
  17. <ul key={color}>
  18. {pieces.map((piece, i) => <li key={i}>{piece}</li>).toArray()}
  19. </ul>
  20. )).toArray()}
  21. </div>
  22. );
  23. },
  24. _onGameChange() {
  25. this.setState({
  26. capturedPieces: GameStore.getCapturedPieces()
  27. });
  28. }
  29. });
  30. export default CapturedPieces;