@benzinga/session

中文文档
2.0.5发布于 2025/04/15MITTypeScriptES Module零依赖近 30 天下载 2881

这个项目之所以可能,是因为

中文使用文档
文档目录4 节
  1. 使用量
  2. 添加新管理器
  3. 会议
  4. 方法

会话包

这个项目之所以可能,是因为

Benzinga Logo

ZSoft Logo

Session 软件包是一个工具,可以跟踪您拥有的所有和管理器。 允许您请求、 存储和获取数据, 并能够在使用前配置管理器 .

使用量

要启动, 您首先要使用 createSession 函数

import { Session } from '@benzinga/session'

您只需通过调用函数即可调用实例

const session = new Session();

一旦你有一个会话 你就不能做很多事情。 这是因为模块设计. 我们称这些模块管理员。 每位管理人员负责管理特定资源. 从日志管理器开始。 直接调用它 getManager 函数与 LoggingManager 阶级作为争论. 这将返回一个日志管理器实例 。 由会议进行,您可以随时通过电话询问 getManager

import { Session } from '@benzinga/session';

const session = new Session({
  'benzinga-logging': {
    verbosity: 'warn'
  }
})
const loggingManager = session.getManager(LoggingManager);
loggingManager.log('debug', 'this is a test');

添加新管理器

要添加一个新的管理器,您需要使用以下命令.

管理器名称必须以单词管理器结尾 。 并必须在数据目录中的管理器目录中.

以下命令仅替换 something 和你的经理的名字.

yarn nx generate @nrwl/web:lib something --directory=libs/managers --buildable --importPath=@benzinga/something-manager --publishable

管理器必须扩展以下接口

export interface Manager<T extends Subscribable<any>> {
  getName: () => string;
  new (name: Session): T;
}

这在人类的言语中意味着什么. 管理者必须用一个会话作为构建者的参数。 它必须有一个静态的公共功能,叫做 getName其他的,则没有要求.

类

会议

Benzinga SDK核心类

要访问 SDK 管理器, 您必须先创建会话

方法

getEnvironment <M extends Environment, R extends ReturnType<M["getEnvironment"]>>(managerEnv: M): R

获取给定管理器的环境

getManager <T extends Subscribable<any>>(managerName: Manager<T>): T

拿个经理的例子

这是获得管理员实例的主要方式和首选方式

版本与发布记录

@benzinga/session 共发布 15 个版本,首次发布于 2023/01/04;过去 12 个月发布了 0 个版本。

版本发布日期距今
2.0.5latest2025/04/151.6 年前
2.0.42025/04/111.6 年前
2.0.32025/04/111.6 年前
2.0.22025/04/111.6 年前
2.0.12025/04/111.6 年前
2.0.02024/10/052 年前

关于 @benzinga/session 的常见问题

@benzinga/session 是什么?

这个项目之所以可能,是因为

如何安装 @benzinga/session?

在项目目录运行 npm install @benzinga/session,或使用 pnpm add / yarn add / bun add。

@benzinga/session 支持 TypeScript 吗?

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

@benzinga/session 支持 ESM 还是 CommonJS?

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

@benzinga/session 可以商用吗?

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

@benzinga/session 的下载量有多少?

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

@benzinga/session 还在维护吗?

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