@adhese/sdk-react

中文文档
1.13.2发布于 2026/11/05GPL-3.0TypeScriptESM + CJS构建来源已验证近 30 天下载 5093

阿德斯 SDK

中文使用文档
文档目录5 节
  1. 安装
  2. AdheseProvider
  3. useAdhese
  4. useAdheseSlot
  5. useAdheseSlot 与 onBeforeRender

Adhese 反应 SDK

对于 React 开发者来说,我们提供一个 React SDK 允许您轻松地将我们的服务整合到您的 React 应用程序中.

反应 SDK 建在顶部 Adhese Java 脚本 SDK 财务报告和审定财务报表 不需要单独安装 Adhese JavaScript SDK .

安装

npm install @adhese/sdk-react

AdheseProvider

这个 AdheseProvider 组成部分是一个背景提供者,使Adhese实例能够提供给所有儿童组成部分. 应该放在你申请的根头 它接受一个 options 传递给 createAdhese 函数。 当 options 道具更改, Adhese 实例重现 。 此提供者取代 createAdhese 函数.

这个 AdheseProvider 组件是环绕 createAdhese 函数。 它必须使用 AdheseProvider 如果你想使用 useAdhese 或者说 useAdheseSlot 钩子.

import { AdheseProvider } from '@adhese/sdk-react';

function Devtools() {
  return (
    <AdheseProvider options={{
      account: 'your-account-id',
    }}>
      <YourApp />
    </AdheseProvider>
  );
}

useAdhese

这个 useAdhese 钩子返回由 AdheseProvider它可用于访问 任何儿童部分的阿德斯实例.

import { useAdhese } from '@adhese/sdk-react';

function YourComponent() {
  const adhese = useAdhese();
  // Use the adhese instance
}

useAdheseSlot

这个 useAdheseSlot 钩子返回给定槽名的槽对象。 使用该选项在组件中创建槽 .

它接受以下论点:

  • elementRef: 对应槽应附加的元素.
  • options: 带有槽选项的对象。 此对象传递到 adhese.addSlot 函数.

当组件被卸载时,该槽会自动从 Adhese 实例中删除 .

import { useAdheseSlot } from '@adhese/sdk-react';

function YourComponent() {
  const elementRef = useRef(null);

  const slot = useAdheseSlot(elementRef, {
    format: 'your-format',
  });

  return (
    <div ref={elementRef} />
  );
}

useAdheseSlot 与 onBeforeRender

类似在 时段文档,您可以使用 页:1 onBeforeRender 召回截取即将发布的广告。 那里的例子用香草JavaScript来写. 改为: 使用情况jsx 您可以使用反应 renderToStaticMarkup 函数可以创建静态 HTML,同时仍然具有 联合来文十.

import { renderToStaticMarkup } from 'react-dom/server';
import { useAdheseSlot } from '@adhese/sdk-react';

function YourComponent() {
  const adhese = useAdhese();
  const elementRef = useRef(null);

  const slot = useAdheseSlot(elementRef, {
    format: 'your-format',
    onBeforeRender: (ad) => {
      if (typeof ad.tag !== 'object') {
        // If the tag is not an object, return the ad as is
        return ad;
      }

      return {
        ...ad,
        tag: renderToStaticMarkup((
          <div>
            <h1>{ad.tag.title}</h1>
            <p>{ad.tag.description}</p>
          </div>
        )),
      }
    },
  });

  return (
    <div ref={slot.elementRef} />
  );
}

版本与发布记录

@adhese/sdk-react 共发布 257 个版本,首次发布于 2024/03/22;过去 12 个月发布了 73 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.13.2latest2026/11/05今天
1.13.2-nightly-20261105093040nightly2026/11/051 天前
1.13.12026/10/2710 天前
1.13.1-nightly-202610270804472026/10/2710 天前
1.13.1-nightly-202610270758582026/10/2710 天前
1.13.02026/10/2115 天前

关于 @adhese/sdk-react 的常见问题

@adhese/sdk-react 是什么?

阿德斯 SDK

如何安装 @adhese/sdk-react?

在项目目录运行 npm install @adhese/sdk-react,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(>=16.13)、react-dom(>=16.13)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@adhese/sdk-react 支持 TypeScript 吗?

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

@adhese/sdk-react 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@adhese/sdk-react 可以商用吗?

@adhese/sdk-react 使用 GPL-3.0 许可。强 Copyleft:分发包含该代码的软件时,整个作品需以 GPL-3.0 兼容许可开源,并附带专利与反锁定条款。仅内部使用不触发此义务。以上为概括,不构成法律意见,请以许可原文为准。

@adhese/sdk-react 的下载量有多少?

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

@adhese/sdk-react 还在维护吗?

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