You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用&&运算符规避ESLint的no-unused-expression警告

解决ESLint no-unused-expression规则对短路表达式的报错问题

针对你遇到的!hasSelectedValues && this.loadOptions([]);触发ESLint规则报错的情况,不需要完全禁用该规则,有以下几种可行方案:

  • 改用if条件语句
    这是最直观且符合代码可读性要求的方案,ESLint不会对标准的条件执行逻辑报错:

    if (!hasSelectedValues) {
      this.loadOptions([]);
    }
    
  • 使用void运算符标记表达式为有意为之
    通过void包裹整个表达式,明确告诉ESLint你是刻意使用这个短路逻辑,而非误写的未使用表达式:

    void (!hasSelectedValues && this.loadOptions([]));
    
  • 调整ESLint规则配置,允许短路求值表达式
    在你的ESLint配置文件(如.eslintrc.js或.eslintrc.json)中,修改no-unused-expression规则,开启allowShortCircuit选项,让ESLint识别这种带副作用的短路逻辑:

    {
      "rules": {
        "no-unused-expressions": ["error", {
          "allowShortCircuit": true
        }]
      }
    }
    

    这个配置会允许由&&或||连接的表达式,只要其中至少有一个操作带有副作用(比如这里的loadOptions调用),就不会触发规则报错。

内容的提问来源于stack exchange,提问作者Philipp Sengelmann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 10:45:34