# @enonic-types/global 中文文档

规范地址：https://npmcn.com/package/%40enonic-types/global/

版本：7\.16\.12
npm 元数据更新时间：2026-11-13T15:47:41.868Z
中文译文更新时间：2026-11-13T17:50:25.490Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40enonic-types/global
原文对照：https://npmcn.com/package/%40enonic-types/global/?lang=original
项目主页：https://github.com/enonic/xp/tree/master#readme
源码仓库：https://github.com/enonic/xp#master

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

- 包体积（解压后）：5.2 kB，3 个文件
- TypeScript 类型：包内自带
- 运行依赖：1 个
- 首次发布：2022-07-25T11:56:25.094Z
- 最新版本发布：2026-11-13T15:47:41.512Z
- 近 30 天下载量：6950（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：106（近 12 个月 48 个）

## 中文简介

全球变量和函数类型定义.

## 安装

```sh
npm install @enonic-types/global
```

也可以使用：`pnpm add @enonic-types/global`、`yarn add @enonic-types/global`、`bun add @enonic-types/global`

## README

# Enonic XP 全球 TS 类型

> Enonic XP 全球变量的脚本定义

## 安装

```bash
npm i --save-dev @enonic-types/global
```

## 使用

将相应的类型添加到您的 `tsconfig.json` 用于应用程序服务器侧类型Script代码的文件 :

```json
{
  "compilerOptions": {
    "types": [
      "@enonic-types/global"
    ]
  }
}
```

之后,所有的全局XP变量都会被打入.

导入函数, 例如 `require`,如果输入库的相应类型也被添加到  `tsconfig.json`。 。 。 .

## 配置

### 需求

为自定义库添加类型解析支持 `require`你可以重新声明 `XpLibraries` 全球范围的接口, 这将导致宣布合并:

```ts
declare global {
    interface XpLibraries {
        '/lib/custom/mylib': typeof import('./mylib');
    }
}
```

#### 其他进口

如果您想要使用自定义导入函数, 如 `__non_webpack_require__` 带有 Webpack 的,只需使用全局 `XpRequire` 类型 :

```ts
declare const __non_webpack_require__: XpRequire;
```

### 豆类

创造出一个新的豆子,一个 `__.newBean()` 函数必须使用。 让它回归一个合适的类型可以有两种方式. 说你创造了 用于您项目中的某个界面 :

```ts
interface SomeHelper {
    help(text: string): void;
}
```

#### 备选案文1

您可以明确传递类型参数 。 这个选项有点干净.

```ts
const helper = __.newBean<SomeHelper>('com.me.project.SomeHelper');
```

#### 备选案文2

或者可以将豆名映射为豆界面. 如果用豆子处理多个文件,这样做可能更可取:

```ts
declare global {
    interface XpBeans {
        'com.me.project.SomeHelper': SomeHelper;
    }
}

const helper = __.newBean('com.me.project.SomeHelper');
```

## 常见问题

### @enonic-types/global 是什么？

全球变量和函数类型定义\.

### 如何安装 @enonic-types/global？

在项目目录运行 npm install @enonic-types/global，或使用 pnpm add / yarn add / bun add。

### @enonic-types/global 支持 TypeScript 吗？

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

### @enonic-types/global 可以商用吗？

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

### @enonic-types/global 的下载量有多少？

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

### @enonic-types/global 还在维护吗？

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

