# @alint-js/plugin-js 中文文档

规范地址：https://npmcn.com/package/%40alint-js/plugin-js/

版本：0\.7\.3
npm 元数据更新时间：2026-09-28T17:18:38.417Z
中文译文更新时间：2026-11-06T01:55:35.021Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40alint-js/plugin-js
原文对照：https://npmcn.com/package/%40alint-js/plugin-js/?lang=original
源码仓库：https://github.com/moeru-ai/alint

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：4.1 MB，15 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2026-07-15T20:27:35.314Z
- 最新版本发布：2026-09-28T17:18:38.181Z
- 近 30 天下载量：6962（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：28（近 12 个月 28 个）

## 中文简介

模型后置的 JavaScript 和 TypeScript 对 Alint 的审查规则

## 安装

```sh
npm install @alint-js/plugin-js
```

也可以使用：`pnpm add @alint-js/plugin-js`、`yarn add @alint-js/plugin-js`、`bun add @alint-js/plugin-js`

## README

# @alint-js/plugin-js (英语)

模型支持的 JavaScript 和 TypeScript 审查规则 `alint`。 。 。 .

包默认导出是插件定义. 个别规则的定义也可作为已命名的出口品提供.

## 规则

捆绑起来 `recommended` 配置可以在 `js` 插件名称 :

-   `js/inline-miniature-normalizer` 报告组成一个私人阅读器或缩小工具包的本地帮助者集群.
-   `js/no-config-file-tests` 报告独立测试,以重述仓库配置,而不是验证行为。 它在呼叫模型前跳过非测试文件,但 `files:` glob 必须包含测试,被忽略的文件仍然被排除在外.
-   `js/no-mixed-layers-without-abstraction` 报告消耗了自己独立再利用的外部整合责任而不具有稳定接口的特性.
-   `js/no-private-schema-toolkit` 报告构成临时计划或有效载荷正常化工具包的当地帮助者集群.
-   `js/no-redundant-binding` 报告本地绑定只重命名一个不变的值或引用而不添加有用的边界.
-   `js/no-redundant-jsdoc` 主要重申有文件记载的声明、签署或执行的联署文件.
-   `js/no-trivial-wrapper-stack` 浅层包装链,没有增加有意义的政策或运行时间界限.
-   `js/no-vacuous-function` 报告功能,其浅层执行没有获得单独的运行时间界限.

`js/no-vacuous-function` 仍然是当地可缓存的模式审查。 存储器全局的测试用法由单独的选入规则处理,这样使一个代理不会改变推荐规则的行为或缓存性.

登记了5个存储处意识规则,但因 `recommended`数字 :

-   `js/no-duplicated-knowledge` 发现政策或机制知识在两个地点编码一个必须共同改变的决定时,文件之间重复。 一个小型的,全能的克隆通常更适合 `simplicity/no-duplicated-helper`。 。 。 .
-   `js/no-redundant-catch` 找到一个外出出错的常态化捕获被被被调用者证明的域-错误后条件所冗余.
-   `js/no-single-use-materialization` 当生产者和消费者能够安全地融为一体时,立即发现生产一次和消费一次的收藏。 它比当地大 `js/no-redundant-binding` 检查未变异名.
-   `js/no-test-only-production-wrapper` 发现一种在生产中申报的浅薄包装器,但仅通过试验加以参考,而且无法通过包装出口得到.
-   `js/no-overlapping-entrypoints` 发现相竞的套件公开入站点,在实质上暴露出同一种符号表面,并具有不明确的犬类所有权. 这不是替代 `js/no-trivial-wrapper-stack`,它审查浅的本地呼叫链.

## 仓库意识审查要求

五项选入规则既需要配置的模型,也需要能够调用工具的代理适配器. 他们重用标准 `@alint-js/tools-fs` 列表、搜索和读取工具,并要求代理商将存储器证据包含在每个发现中.

`js/no-config-file-tests` 它不会意识到寄存器, 不需要代理适配器 : 它会判断它交给的测试文件, 因此配置的模型就足够了 .

## 如何使用

使用默认导出 `js` 插件名, 因为捆绑的预设指的是 `js/*` 规则ID.

### 建议的预设

```ts
import jsPlugin from '@alint-js/plugin-js'

import { defineConfig } from '@alint-js/cli'

export default defineConfig([
  {
    extends: ['js/recommended'],
    files: ['**/*.{js,jsx,ts,tsx,mjs,cjs,mts,cts}'],
    plugins: {
      js: jsPlugin,
    },
  },
])
```

### 选择到寄存器意识规则

在您中配置代理和工具调用模式 `alint` 运行时间,然后启用寄存器识别规则:

```ts
import jsPlugin from '@alint-js/plugin-js'

import { defineConfig } from '@alint-js/cli'

export default defineConfig([
  {
    files: ['**/*.{js,jsx,ts,tsx,mjs,cjs,mts,cts}'],
    plugins: {
      js: jsPlugin,
    },
    rules: {
      'js/no-duplicated-knowledge': 'warn',
      'js/no-overlapping-entrypoints': 'warn',
      'js/no-redundant-catch': 'warn',
      'js/no-single-use-materialization': 'warn',
      'js/no-test-only-production-wrapper': 'warn',
    },
  },
])
```

## 何时使用

-   使用推荐的预设用于模型辅助JavaScript和TypeScript设计审查.
-   当交叉文件所有权、软件包表面或控制/数据流合同需要调查时,即可进入存储器-意识规则.
-   在程序上构建另一个插件定义时使用命名规则导出 .

## 不使用时

-   不要用模型支撑的规则来决定语法意识的用法.
-   不要启用只使用一代模式或没有代理适配器的寄存器-意识规则.
-   不使用 `js/no-config-file-tests` 当配置模块拥有逻辑时,寄存器必须验证,例如自定义的 lint 规则,自定义的捆绑器插件,或者合并或正常化的帮助器. 把这个逻辑移入自己的模块,然后测试模块.
-   不使用 `js/no-duplicated-knowledge` 用于不编码一个共享决定的偶联字形或克隆.
-   不使用 `js/no-overlapping-entrypoints` 用于记录的相容性别名或有条件/只类型导出.
-   不使用 `js/no-redundant-catch` 当外部抓取改变清理,可观察性,错误元数据,原因,身份,或取消行为时.
-   不使用 `js/no-single-use-materialization` 当核聚变会改变验证命令,评价,身份,副作用,货币,或者另一种可观察到的行为.

## 常见问题

### @alint-js/plugin-js 是什么？

模型后置的 JavaScript 和 TypeScript 对 Alint 的审查规则

### 如何安装 @alint-js/plugin-js？

在项目目录运行 npm install @alint-js/plugin-js，或使用 pnpm add / yarn add / bun add。

### @alint-js/plugin-js 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @alint-js/plugin-js 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @alint-js/plugin-js 可以商用吗？

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

### @alint-js/plugin-js 的下载量有多少？

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

### @alint-js/plugin-js 还在维护吗？

最新版本 0\.7\.3 发布于 2026/09/29（1 个月前）；至今共发布 28 个版本，其中过去 12 个月发布了 28 个；首次发布于 2026/07/16。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

