Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Excluir itens

Estou tendo problema quando vou excluir o item, quando vou executar a função onExclude, ele diz que o minha variavel de state está undefined, podem me ajudar? Segue o código

export default class ListTodo extends Component{

    constructor(){
        super();
        this.state = {itemsTodo: []};
    }

    onAdd(itemList){

        this.state.itemsTodo.unshift({
            index: this.state.itemsTodo.length+1, // Pega o tamanho da lista e adiciona mais 1
            value: itemList.newItemValue, // Pega o valor que foi inserido no Input
            check: false // Passa por padrão o atributo falso para apontar que a tarefa não foi checada
        });

        this.setState({itemsTodo: this.state.itemsTodo});
    }

    onExclude(itemList){
        console.log(itemList);
        this.state.itemsTodo.splice(itemList, 1); // Remove um item da lista na posição passada por parametro

        this.setState({itemsTodo: this.state.itemsTodo});
    }

    onCheck(itemList){
        let items = this.state.itemsTodo[itemList];

        this.state.itemsTodo.splice(itemList, 1);
        items.check =!items.check;
        this.state.itemsTodo.push(items);

        this.setState({itemsTodo: this.state.itemsTodo});
    }

    render(){
        return(
            <div id="main">
                <Header />
                <TodosListagem items={this.state.itemsTodo} onExclude={this.onExclude} onCheck={this.onCheck} />
                <Form onAdd={this.onAdd.bind(this)} />
            </div>
        )
    }
}
1 resposta
solução!

Resolvi, faltou o this do bind na chamada do TodoListagem