react-eslint在react-component方法中定义的默认参数上没有未定义的错误

vuktfyat  于 2021-09-23  发布在  Java
关注(0)|答案(0)|浏览(80)

当我试图编译它时,我得到了这个无未定义错误。我不知道为什么,我在我的react组件上为我的默认参数指定了一个值(请注意,我正在练习)。我认为我做的一切都是正确的这是我的代码:

// method
    handleTodo = (cardId, appComp=this, remove=false) => {

        switch(!remove){
            case true:
                console.log(appComp.state.todoCards.filter(card => card.id === cardId)[0].todoItems.length )
                //define new list  
                let newTodo = {
                    id: appComp.state.todoCards.filter(card => card.id === cardId)[0].todoItems.length + 1,
                    isCompleted: "false",
                    todo: "",
                } 

                // add cards to appComp list of todoItems
                appComp.state.todoCards.filter(card => card.id === cardId)[0].todoItems.push(newTodo);

                // update the state of todoApp
                appComp.setState({
                    todoCards: appComp.state.todoCards
                })

                break;

            default: 

                // remove element from list 
                let arr = appComp.state.todoCards.filter(card => card.id === cardId)[0].todoItems;

                // delete selected tasks 
                arr.map((task, index) => { 
                    return (task.isCompleted === 'true' || task.isCompleted === true) ? appComp.state.todoCards.filter(card => card.id === cardId)[0].todoItems.splice(index, 1) : 1
                })

                // update state of app component 
                appComp.setState({
                    todoCards: appComp.state.todoCards
                })
        }
    }

我在另一个组件上调用此函数,如下所示:

<button className="btn btn-danger btn-sm"  onClick={() => {
                // eslint-disable-next-line no-undef
                this.props.handleTodo(this.props.cardId, remove=true)}}>Remove</button>

据我所知,这个函数调用应该可以工作,因为可以用另一个值“true”重新分配参数“remove”。我已经在控制台的代码之外对其进行了测试。但当我在我的react应用程序中运行它时,我似乎一直得到这个无未定义错误。
另外,我已经禁用了eslint以查看它的工作情况,但是我得到了一个未捕获的引用错误。 Uncaught ReferenceError: assignment to undeclared variable remove 希望有人能指出我做错了什么。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题