# @balena/es-version 中文文档

规范地址：https://npmcn.com/package/%40balena/es-version/

版本：1\.0\.4
npm 元数据更新时间：2026-02-19T01:54:18.598Z
中文译文更新时间：2026-11-07T15:42:47.262Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40balena/es-version
原文对照：https://npmcn.com/package/%40balena/es-version/?lang=original
项目主页：https://github.com/balena-io-modules/balena-es-version#readme
源码仓库：https://github.com/balena-io-modules/balena-es-version

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

- 包体积（解压后）：18.2 kB，6 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2020-05-26T15:44:15.248Z
- 最新版本发布：2026-02-19T01:54:18.408Z
- 近 30 天下载量：127488（2026-10-08 至 2026-11-06，npm 官方下载统计）
- 已发布版本数：16（近 12 个月 2 个）

## 中文简介

这个模块提供了指定默认 es 版本以包含巴莱纳模块的能力.

## 安装

```sh
npm install @balena/es-version
```

也可以使用：`pnpm add @balena/es-version`、`yarn add @balena/es-version`、`bun add @balena/es-version`

## README

# @balena/es-version (英语)

本模块允许指定目标 es 版本供其他模块需要,目前支持的目标版本:

-   es3( 默认)
-   编号5
-   页:1
-   2016年时
-   2017年统计
-   第2018号
-   编号2019
-   es2020 (中文(简体) )
-   编号2021
-   编号2022
-   下一个

## 用作客户端

1.  添加 @ balena/ es- version 到您的软件包。 json with a `^` 版本规格, eg

```json
"@balena/es-version": "^1.0.0",
```

注意:如果使用锁定的依赖, eg package-lock.json/npm-shrinkwrap.json/etc, 然后确保同时去除模块, 这样模块的同一种实例会被用到任何地方 .

2.  在您的模块中,它需要先于其他任何条件,并设定想要的版本:

```js
// Must be set before the first require of an @balena/es-version supporting module
require('@balena/es-version').set('es5');
```

然后任何支持选择目标版本的模块都将使用最接近的匹配版本,优先级为:

1.  准确匹配
2.  在想要的版本下最接近匹配
3.  最低支持版本

## 作为模块提供者的使用

1.  添加 @ balena/ es- version 到您的软件包。 json with a `^` 版本规格, eg

```json
"@balena/es-version": "^1.0.0",
```

2.  生成用于您想要支持的 es 版本, 以及您将要创建的 shim 的类型, 例如

```json
"build-es5": "tsc --target es5 --outDir es5",
"build-es2015": "tsc --target es2015 --outDir es2015",
"build-es2018": "tsc --target es2018 --outDir es2018",
"build-types": "tsc --emitDeclarationOnly --outDir .",
"build": "npm run build-es5 && npm run build-es2015 && npm run build-es2018 && npm run build-types",
```

2.  创建 shim 以作为您要装入想要的版本的入口, eg

```js
// First get the es version to use:
var esVersion = require('@balena/es-version').get(['es5', 'es2015', 'es2018');
// Then include/return the correct version of your module, eg
module.exports = module.exports = require('./' + esVersion);
```

说明: 这必须与您最低支持的 es 版本兼容

3.  指向你的包裹。 Json 到新的shim和类型, eg

```json
"main": "index.js",
"types": "index.d.ts",
```

4.  还建议在您的软件包中添加一个"浏览器"条目来支持默认配置的浏览器捆绑器, eg

```json
"browser": "es5"
```

## 常见问题

### @balena/es-version 是什么？

这个模块提供了指定默认 es 版本以包含巴莱纳模块的能力\.

### 如何安装 @balena/es-version？

在项目目录运行 npm install @balena/es-version，或使用 pnpm add / yarn add / bun add。

### @balena/es-version 支持 TypeScript 吗？

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

### @balena/es-version 支持 ESM 还是 CommonJS？

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

### @balena/es-version 可以商用吗？

@balena/es-version 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @balena/es-version 的下载量有多少？

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

### @balena/es-version 还在维护吗？

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

