@callstack/eslint-config

中文文档
15.0.0发布于 2024/08/21MITCommonJS近 30 天下载 2.4万

ESLint 预设扩展推荐的 ESLint 配置, TypeScript, Pretier 和 Jest

中文使用文档
文档目录7 节
  1. 安装
  2. 使用量
  3. 反应原生配置
  4. 重现配置
  5. 节点配置
  6. 扩展配置示例
  7. 类型脚本

@ callstack/ slint- config

Calltack ESLint 配置 react Independent, React and Node.js 项目, 使用 Flow, TypeScript, Prettier 和 Jest 并带有合理默认值. 支持斯林特克和平面配置两种.

安装

与雅尔:

yarn add --dev eslint @callstack/eslint-config

或与 npm :

npm install --save-dev eslint @callstack/eslint-config

使用量

您可以通过扩展您的 ESLint 配置来选择以下环境之一 eslint.config.mjs 用于平面配置,或 .eslintrc 编号 : eslintConfig 输入 package.json 为 eslintrac 配置样式) @callstack 适合你项目的设计.

反应原生配置

用法 :

斯林特克格式 (ESLint < v9)

{
  "extends": "@callstack"
}

平面配置格式( i)eslint.config.mjs, ESLint 9+) (中文(简体) )

import callstackConfig from '@callstack/eslint-config/react-native.flat.js';

export default [
  {
    ignores: [
      // ignored files go here
    ],
  },
  ...callstackConfig,
  {
    rules: {
      // your custom rules
    },
  },
];

使用的插件 :

此外,它设定 "react-native/react-native" 环境和本土平台扩展解决.

重现配置

用法 :

斯林特克格式 (ESLint < v9)

{
  "extends": "@callstack/eslint-config/react"
}

平面配置格式( i)eslint.config.mjs, ESLint 9+) (中文(简体) )

import callstackConfigReact from '@callstack/eslint-config/react.flat.js';

export default [
  {
    ignores: [
      // ignored files go here
    ],
  },
  ...callstackConfigReact,
  {
    rules: {
      // your custom rules
    },
  },
];

使用的插件 :

节点配置

用法 :

斯林特克格式 (ESLint < v9)

{
  "extends": "@callstack/eslint-config/node"
}

平面配置格式( i)eslint.config.mjs, ESLint 9+) (中文(简体) )

import callstackConfigNode from '@callstack/eslint-config/node.flat.js';

export default [
  {
    ignores: [
      // ignored files go here
    ],
  },
  ...callstackConfigNode,
  {
    rules: {
      // your custom rules
    },
  },
];

使用的插件 :

此外,它设定 es6 财务报告和审定财务报表 node 环境.

扩展配置示例

斯林特克格式 (ESLint < v9)
{
  "extends": "@callstack",
  "rules": {
    "global-require": 0,
    "prefer-destructuring": 0
  }
}
平面配置格式( i)eslint.config.mjs, ESLint 9+) (中文(简体) )
import callstackConfig from '@callstack/eslint-config/react-native.flat.js';

export default [
  ...callstackConfig,
  {
    rules: {
      'global-require': 0,
      'prefer-destructuring': 0,
    },
  },
];

类型脚本

TypeScript被支持出箱,包括从TS文件中导入JS文件,反之亦然. 你只需要确保你拥有 typescript 模块已安装.

然后当运行 ESLint 添加 --ext '.js,.ts' (你可能也需要) .jsx, .tsx备选办法,例如:

yarn eslint --ext '.js,.ts' ./src

parserOptions.project 设置为 ./tsconfig.json您也许需要 调整。 。 。 .

为此,您需要在您的 ESLint 配置中覆盖 TS 文件的设置 :

斯林特克格式 (ESLint < v9)
{
  "overrides": [
    {
      "files": ["*.ts", "*.tsx"],
      "parserOptions": {
        "project": "./packages/**/tsconfig.json"
      }
    }
  ]
}
平面配置格式( i)eslint.config.mjs, ESLint 9+) (中文(简体) )

在平面配置中,只需将另一个配置对象附加到数组中,然后确定导入 /react-native.flat 文件 :

import callstackConfig from '@callstack/eslint-config/react-native.flat.js';
import tsEslintParser from '@typescript-eslint/parser';

export default [
  ...callstackConfig,
  {
    files: ['**/*.ts', '**/*.tsx'],
    languageOptions: {
      parser: tsEslintParser,
      parserOptions: { project: './packages/**/tsconfig.json' },
    },
  },
];

虚拟系统

如果您是 VSCode 用户, 您可以在您的配置中添加此配置 .vscode/settings.json 帮助:

{
  "eslint.validate": [
    "javascript",
    "javascriptreact",
    "typescript",
    "typescriptreact"
  ]
}

版本与发布记录

@callstack/eslint-config 共发布 32 个版本,首次发布于 2018/08/21;过去 12 个月发布了 0 个版本。

版本发布日期距今
15.0.0latest2024/08/212 年前
14.2.02024/06/102 年前
14.1.12024/04/252 年前
14.1.02023/11/092 年前
14.0.02023/09/223 年前
13.0.22022/09/124 年前

关于 @callstack/eslint-config 的常见问题

@callstack/eslint-config 是什么?

ESLint 预设扩展推荐的 ESLint 配置, TypeScript, Pretier 和 Jest

如何安装 @callstack/eslint-config?

在项目目录运行 npm install @callstack/eslint-config,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:eslint(>=8.1.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@callstack/eslint-config 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/callstack__eslint-config 是否存在。

@callstack/eslint-config 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@callstack/eslint-config 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=18.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@callstack/eslint-config 可以商用吗?

@callstack/eslint-config 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@callstack/eslint-config 的下载量有多少?

根据 npm 官方下载统计,@callstack/eslint-config 在 2026/10/09 – 2026/11/07 这 30 天内被下载 23,886 次,日均约 796 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@callstack/eslint-config 还在维护吗?

最新版本 15.0.0 发布于 2024/08/21(2 年前);至今共发布 32 个版本,其中过去 12 个月发布了 0 个;首次发布于 2018/08/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。