Filtering React js

12 浏览
0 Comments

Filtering React js

这个问题已经有了答案

React - uncaught TypeError: Cannot read property \'setState\' of undefined

我需要帮助简单的过滤待办事项列表。我已经成功地实现添加和删除任务,但是现在我想通过添加任务进行过滤,但是我得到了错误信息,我完全是初学者,请记住这一点,谢谢!

TypeError: Cannot read property \'setState\' of undefined

26 | this.setState({query: evt.target.value});

import React, {Component} from 'react';
import '../App.css';
import  Form from './Form';
import  List from './List';
class App extends Component {
state = {
    query: '',
    inputValue: "",
    todos: [
        {value: 'Naumiej  się Reacta', done: false},
        {value: 'Pucuj trzewiki ', done: true},
    ]
}
handleChange = (evt) => {
    this.setState({inputValue: evt.target.value});
}
removeMe = (index) =>{
    this.setState({
        todos: this.state.todos.filter((_, i) => i !== index)
    })
}
searchChanged(evt) {
    this.setState({query: evt.target.value});
}
handleSubmit = (evt) => {
    evt.preventDefault();
    const newTodo = {
        value: this.state.inputValue
    };
    const todos = this.state.todos;
    todos.push(newTodo);
    this.setState({todos: todos, inputValue: ''})
}
render() {
    return (
            
            
    );
}
}
export default App;

列表

import React, {Component} from 'react';
import  Task from './Task';
class List extends Component {
render() {
    let serchedTasks = this.props.todos.filter(
        (todos) => {
            return todos.value.indexOf(this.props.query) !== -1;
        }
    );
    return (
            {serchedTasks.map((todo, index) => {
                return (
                    
                )
            })}
    )
}
}
export default List;

admin 更改状态以发布 2023年5月23日
0
0 Comments

像你在其他地方一样使用箭头函数:

searchChanged = (evt) => {

0
0 Comments

searchChanged(evt)没有绑定到this

将其重新定义为箭头函数。

searchChanged = (evt) => {
  this.setState({query: evt.target.value})
}

0