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

eslint-plugin-compat未检测IE11不支持的toSorted()问题求助

问题原因及解决方案

可能的核心原因

  1. TypeScript target配置干扰兼容性检测
    你的tsconfig设置target: ES2023,而toSorted()是ES2023新增的数组方法。eslint-plugin-compat默认会参考TypeScript的编译目标,认为代码会被编译到ES2023环境,因此跳过了针对IE11的兼容性校验。

  2. 插件未强制读取browserslist配置
    尽管package.json中配置了browserslist: ["IE 11"],但在TypeScript环境下,插件需要显式配置来强制使用browserslist规则,而非依赖编译目标。

  3. 规则可能被其他配置覆盖
    虽然你继承了plugin:compat/recommended,但配置加载顺序或其他规则集可能覆盖了compat/no-unsupported-features的生效逻辑。

具体解决方案

方案1:强制插件使用指定兼容目标

在eslintrc.json中添加settings.compat配置,明确忽略TypeScript target,强制校验IE11兼容性:

"settings": {
  "compat": {
    "overrideTargets": {
      "ie": "11"
    }
  }
}

方案2:调整tsconfig的target

如果实际编译输出并非ES2023,可将tsconfig的target改为更低版本(比如ES5),这样TypeScript会提示toSorted()需要polyfill,同时eslint-plugin-compat会触发兼容性检测。

方案3:显式启用compat规则

在eslintrc.json的rules中明确开启规则,避免被其他配置覆盖:

"rules": {
  "compat/no-unsupported-features": ["error", {
    "versionDetection": "auto",
    "ignores": []
  }]
}

额外检查点

  • 确认没有.browserslistrc文件覆盖package.json中的配置
  • 执行npx browserslist命令验证配置是否生效,输出应包含IE 11

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 03:05:05