ToDoList.jsx 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import React, {Component} from 'react';
  2. import {connect} from 'react-redux'
  3. import DeleteIcon from '@material-ui/icons/Delete';
  4. import IconButton from '@material-ui/core/IconButton';
  5. import List from '@material-ui/core/List';
  6. import ListItem from '@material-ui/core/ListItem';
  7. import ListItemSecondaryAction from '@material-ui/core/ListItemSecondaryAction';
  8. import ListItemText from '@material-ui/core/ListItemText';
  9. import Checkbox from '@material-ui/core/Checkbox';
  10. import {switchCompleted} from '../../../store/actions'
  11. class ToDoList extends Component {
  12. constructor(props) {
  13. super(props);
  14. }
  15. _onChange = item => event => {
  16. const index = event.target.value;
  17. this.props.dispatch(switchCompleted(index, item));
  18. };
  19. render() {
  20. console.log("LIST: ", this.props.todoList)
  21. return (
  22. <List>
  23. {
  24. this.props.todoList.map((item, i) => (
  25. <ListItem key={i} button={true}>
  26. <Checkbox checked={item.completed} onChange={this._onChange(item)} value={i.toString()}/>
  27. <ListItemText primary={item.text}/>
  28. </ListItem>
  29. ))
  30. }
  31. </List>)
  32. }
  33. }
  34. const mapStateToProps = state => ({todoList: state.toDoReducer.todoList});
  35. export default connect(mapStateToProps)(ToDoList);