ESLint v9.16.0 发布

我们刚刚推送了 ESLint v9.16.0,这是一个 ESLint 的小版本升级。此版本添加了一些新功能并修复了之前版本中发现的几个错误。

亮点

sort-keysignoreComputedKeys 选项

此版本为 sort-keys 规则添加了一个新的布尔选项 ignoreComputedKeysignoreComputedKeys 通过将计算键视为组分隔符而不是组的一部分,从而实现更一致的非计算名称属性排序。以下示例显示了在没有 ignoreComputedKeys 选项的情况下,对象字面量中属性的预期排序。

使用 ignoreComputedKeys: false(默认)

const obj = { a: 10, b: 20, [c]: 7.5, d: 15 };

ignoreComputedKeys 设置为 true 时,计算键 c 可以出现在字面量中的任何位置,只要其他属性组已排序即可。

使用 ignoreComputedKeys: true

const obj = { a: 10, b: 20, [c]: 7.5, d: 15 };

const obj = { d: 15, [c]: 7.5, a: 10, b: 20 };

const obj = { a: 10, b: 20, d: 15, [c]: 7.5 };

等等。

语言无关的 no-restricted-syntax

此版本中的另一个增强功能是能够将 no-restricted-syntax 规则用于任何语言。这在以前的版本中已经可以实现,但现在官方支持并记录了与语言插件的用法。

当使用 @eslint/json 插件检查 JSON 文件时,警告使用 null 的配置可能如下所示

import json from "@eslint/json";

export default [
{
files: ["**/*.json"],
language: "json/json",
plugins: {
json,
},
rules: {
"no-restricted-syntax": [
"warn",
"Null" // AST selector for `null`
],
},
},
];

如果您想根据 AST 选择器 限制项目中的语法,但不确定哪些节点代表特定代码,我们建议使用 代码浏览器

特性

文档

杂项

  • feb703b 杂项: 升级到 @eslint/js@9.16.0 (#19195) (Francesco Trotta)
  • df9bf95 杂项: package.json 更新,用于 @eslint/js 发布 (Jenkins)
  • f831893 杂项: 为 sort-keysignoreComputedKeys 选项添加类型 (#19184) (Tanuj Kanti)
  • 3afb8a1 杂项: 更新依赖 @eslint/json 到 ^0.8.0 (#19177) (Milos Djermanovic)
  • 1f77c53 杂项: 向 package.json 添加 repository.directory 属性 (#19165) (루밀LuMir)
  • d460594 杂项: 更新依赖 @arethetypeswrong/cli 到 ^0.17.0 (#19147) (renovate[bot])
  • 45cd4ea 重构: 更新规则中的默认选项 (#19136) (Milos Djermanovic)

最新的 ESLint 新闻、案例研究、教程和资源。

Evolving flat config with extends
5 分钟阅读

使用 extends 演进扁平配置

您的 eslint.config.js 文件现在可以使用 extends 来简化您的配置。

ESLint v9.22.0 released
1 分钟阅读

ESLint v9.22.0 发布

我们刚刚推送了 ESLint v9.22.0,这是一个 ESLint 的小版本升级。此版本添加了一些新功能并修复了之前版本中发现的几个错误。

ESLint v9.21.0 released
2 分钟阅读

ESLint v9.21.0 发布

我们刚刚推送了 ESLint v9.21.0,这是一个 ESLint 的小版本升级。此版本添加了一些新功能并修复了之前版本中发现的几个错误。