@equinor/fusion-framework-react-module-context

中文文档
7.0.7发布于 2026/11/12ISCTypeScriptES Module近 30 天下载 4248
中文使用文档
文档目录5 节
  1. 出口
  2. 此软件包对 react-app/context
  3. 使用当前文本/ 使用模块当前文本
  4. 使用查询链接/ 使用模块查询链接
  5. 相关

@ equinor/ 组合- 框架- 反应- 模块- context

Fusion上下文模块的反应钩. 提供钩子来读取当前上下文,设置上下文,并查询来自React组件的现有上下文.

导入 :

import { useCurrentContext, useQueryContext, enableContext } from '@equinor/fusion-framework-react-module-context';

出口

导出类型说明
useCurrentContext钩子读取并设置当前上下文( 需要提供方参数)
useModuleCurrentContext钩子从最近的模块范围读取和设置当前上下文
useQueryContext钩子搜索可用的上下文并解禁( 需要提供商)
useModuleQueryContext钩子从最近的模块范围搜索可用的上下文
enableContext函数在配置符中启用上下文模块
ContextModule类型背景模块类型定义
ContextItem类型单一上下文条目(项目、设施等)
ContextItemType类型上下文项目类型
IContextProvider类型上下文提供者接口
IContextModuleConfigurator类型启用上下文模块的配置界面
FusionContextSearchError错误上下文搜索失败时出错

此软件包对 react-app/context

假设从
构建融合应用( 最常见的)@equinor/fusion-framework-react-app/context
建立可重复使用的库或模块@equinor/fusion-framework-react-module-context
建立门户或主机应用程序@equinor/fusion-framework-react-module-context

这个 react-app/context 子路径用应用扫描的方便来包裹这些钩子. 当构建框架级代码或共享库需要明确提供者注入时直接使用此软件包.

使用当前文本/ 使用模块当前文本

返回当前选定的上下文和一个设置函数.

import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-context';

const ContextInfo = () => {
  const { currentContext, setCurrentContext } = useModuleCurrentContext();

  if (!currentContext) return <p>No context selected</p>;

  return (
    <div>
      <p>{currentContext.title}</p>
      <button onClick={() => setCurrentContext(null)}>Clear</button>
    </div>
  );
};

使用查询链接/ 使用模块查询链接

搜索内置调试的可用上下文( 默认500ms) .

import { useModuleQueryContext } from '@equinor/fusion-framework-react-module-context';

const ContextSearch = () => {
  const { value: results, querying, query } = useModuleQueryContext();

  return (
    <div>
      <input onChange={(e) => query(e.target.value)} placeholder="Search contexts…" />
      {querying && <span>Searching…</span>}
      <ul>{results?.map((ctx) => <li key={ctx.id}>{ctx.title}</li>)}</ul>
    </div>
  );
};

版本与发布记录

@equinor/fusion-framework-react-module-context 共发布 194 个版本,首次发布于 2022/11/02;过去 12 个月发布了 17 个版本。

版本发布日期距今
7.0.7latest2026/11/121 天前
7.0.7-next.1next2026/11/112 天前
7.0.7-next.02026/10/2816 天前
7.0.62026/10/1727 天前
7.0.6-trusted-publishing-20261015-9dfe7602cd2a49a8a9df00d62c26e7304a82a85atrusted-publishing-202610152026/10/1629 天前
7.0.52026/10/121 个月前

其他发布通道:apploader → 6.2.29-apploader-be21a6b60eb13eee8bf869e75002d8634e9c50a9,cli-search-index → 6.2.34-cli-search-index.0,msal-v5 → 6.2.34-msal-v5.0,trusted-publishing-20261015 → 7.0.6-trusted-publishing-20261015-9dfe7602cd2a49a8a9df00d62c26e7304a82a85a,next → 7.0.7-next.1。

关于 @equinor/fusion-framework-react-module-context 的常见问题

如何安装 @equinor/fusion-framework-react-module-context?

在项目目录运行 npm install @equinor/fusion-framework-react-module-context,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(^18.0.0 || ^19.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@equinor/fusion-framework-react-module-context 支持 TypeScript 吗?

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

@equinor/fusion-framework-react-module-context 支持 ESM 还是 CommonJS?

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

@equinor/fusion-framework-react-module-context 可以商用吗?

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

@equinor/fusion-framework-react-module-context 的下载量有多少?

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

@equinor/fusion-framework-react-module-context 还在维护吗?

最新版本 7.0.7 发布于 2026/11/12(1 天前);至今共发布 194 个版本,其中过去 12 个月发布了 17 个;首次发布于 2022/11/02。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。