javascript - 使用带有大括号和三元运算符的箭头函数来解决 setState 的回调错误?

标签 javascript reactjs

我在花括号中设置了一个带有三元运算符的箭头函数作为 setState 的回调,但在运行代码时收到错误消息。

  1. 如果我删除花括号,错误就会消失。
  2. 如果我不使用三元运算符,错误就会消失。
  3. 如果我在运算符之前写“return”,错误就会消失。

该代码以两种方式工作(看起来它运行某种救援方法),但我不明白为什么我一开始就收到错误消息。我正在运行的函数不需要返回任何东西,只需要运行一些语句。但似乎 React 不喜欢回调中的三元运算符?或者如果他们被退回,他们会没事吗?有谁知道为什么吗?

    this.setState({someObject},() => { x ? console.log("yo") : null;}); 

警告信息

 Expected an assignment or function call and instead saw an expression  no-unused-expressions

回调函数中的三元运算符有问题吗?

最佳答案

这是一个 ESLint 警告,它的发生是因为您没有使用您在其他任何地方返回的值并且对程序状态没有影响。

Unused expressions are those expressions that evaluate to a value but are never used

您可以在此处阅读有关该规则的更多信息: ESLint

关于javascript - 使用带有大括号和三元运算符的箭头函数来解决 setState 的回调错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50503071/

相关文章:

javascript - 将前几天的大日历风格 react 到当前日期

javascript - 无法对 api 进行 POST,使用 fetch 时出现错误 400

javascript - 单个长图像的幻灯片循环

reactjs - 带有 preloadedState 的 Redux (Toolkit) 存储的类型定义

javascript - Next.js 中的动态嵌套路由

javascript - 使用 React 处理大表单

reactjs - RTK useLazyQuery 触发 onClick 数据未刷新

javascript - 为每个数组元素定义一个函数

javascript - Angular 2 Fusion Chart 集成

javascript - 如何使用javascript动态添加html类