import React from 'react'; import Li from './Li.js'; import AddTodoForm from './AddtodoForm.js'; import 'bootstrap/dist/css/bootstrap.css'; import dotoJson from '../server/data/todolist.js'; class TodoList extends React.Component { constructor(props){ super(props) this.state = { todoList : dotoJson, nextTodoValue: '', isCheckAll: false, checkAllToggleName: 'checkAll' } } addToList = () => { let todo = this.state.nextTodoValue; if (todo !== '') { let tmp_state = this.state; tmp_state.todoList.push({id: 12900,todo:todo, at:'This year' , isDone: false}) tmp_state.nextTodoValue = ""; this.setState({tmp_state}) } } changeNextTodoValue = (event) => { let newNextTodoValue = event.target.value this.setState({ nextTodoValue : newNextTodoValue }); } changeMark = (id) => { let tmp_state = this.state.todoList.map((ele) => { if(id === ele.id) ele.isDone = !ele.isDone; ; return ele }); this.setState({todoList:tmp_state}); } closeMark = (id) => { let tmp_state = this.state.todoList.filter((ele, index) => ( ele.id !== id ) ) this.setState({todoList:tmp_state}) } checkAllToggle = () => { let tmp_state = this.state.todoList.map((element) => { element.isDone = !this.state.checkAllToggle return (element) } ) this.setState({todoList:tmp_state,checkAllToggle:!this.state.checkAllToggle,isCheckAll: !this.state.isCheckAll}) } render(){ return (

Awesome Todo list

    { this.state.todoList.map( (element) => (
  • )) }
) } } export default TodoList