javascript - react 警告 Expected to return a value at the end of arrow function array-callback-return

标签 javascript reactjs

我有这个按钮

<button
                className="waves-effect waves-light btn btn-secondary has-icon"
                onClick={() => {
                  const idSelected = []

                  const itemSelected = this.state.clientItemUser.filter((i, row) => {

                    if (this.props.listTableCheckedItems.indexOf(row) === -1) {
                      idSelected.push(i.clientid)
                      return i
                    }
                  })

                  const { setTableCheckedItems } = this.props
                  console.log('itemSelected > ', itemSelected)
                  this.setState({ clientItemUser: itemSelected, clientIdItemUser: idSelected })

                  setTableCheckedItems([])
                }}
              >

它可以工作并且可以做应该做的事情,但我想摆脱这个警告“预期在箭头函数数组回调返回的末尾返回一个值” 它说问题出在 const itemSelected = this.state.clientItemUser.filter((i, row) => 我真的很想学习如何解决这个警告,因为它不是唯一的地方看起来,我相信理解这个我将能够弄清楚其他的,感谢您的时间和帮助

我在堆栈上查看了另一个类似的问题,但它们似乎与我的不一样

最佳答案

如果 row 位于 this.props.listTableCheckedItems 中,您只会返回一些内容。

这里有几个问题。

1:如果不是真的,你需要返回一些东西。

if (this.props.listTableCheckedItems.indexOf(row) === -1) {
  idSelected.push(i.clientid)
  return i
} else {
  return ...
}

2:您的过滤器回调将为列表中的第一个元素返回 falsy,因为 i 为 0。除非有意,否则您应该返回 true

if (this.props.listTableCheckedItems.indexOf(row) === -1) {
  idSelected.push(i.clientid)
}
return this.props.listTableCheckedItems.indexOf(row) === -1

关于javascript - react 警告 Expected to return a value at the end of arrow function array-callback-return,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53198856/

相关文章:

javascript - 无法在 React 应用程序的操作类中创建正确的 url

javascript - 单击加载 PHP 文件

javascript - 当我调整窗口大小时,如何更改导航栏上 li 标签的值/内容?

javascript - Azure 帐户共享访问签名

javascript - XML3D:相机控件和 XML3D 工具

reactjs - 抽屉导航器 : Change Text Color

javascript - React useRef 当前不是每次都更新

javascript - map 未定义

javascript - 如何在 javascript/react 中从另一个文件导入数据

javascript - 动态添加输入字段并跟踪输入的内容