@balena/es-version

中文文档
1.0.4发布于 2026/02/19Apache-2.0TypeScriptCommonJS零依赖近 30 天下载 12.7万

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

中文使用文档

@balena/es-version (英语)

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

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

用作客户端

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

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

  1. 在您的模块中,它需要先于其他任何条件,并设定想要的版本:
// 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
"@balena/es-version": "^1.0.0",
  1. 生成用于您想要支持的 es 版本, 以及您将要创建的 shim 的类型, 例如
"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",
  1. 创建 shim 以作为您要装入想要的版本的入口, eg
// 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 版本兼容

  1. 指向你的包裹。 Json 到新的shim和类型, eg
"main": "index.js",
"types": "index.d.ts",
  1. 还建议在您的软件包中添加一个"浏览器"条目来支持默认配置的浏览器捆绑器, eg
"browser": "es5"

版本与发布记录

@balena/es-version 共发布 16 个版本,首次发布于 2020/05/26;过去 12 个月发布了 2 个版本。

版本发布日期距今
1.0.4latest2026/02/198 个月前
1.0.4-build-add-npm-oidc-permissions-c6d7520512a1f915297e8208d53aa4905f690126-1build-add-npm-oidc-permissions2026/02/198 个月前
1.0.32023/09/063 年前
1.0.3-build-es2023-db4a7d2af00194a422431a73e3d57c2f5bd5382e-12023/09/063 年前
1.0.22022/10/314 年前
1.0.2-es-2022-fa3275fbb963e1d6708a20bb9e9ff3de3aae78e7-12022/10/314 年前

关于 @balena/es-version 的常见问题

@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 和提交记录判断。