@comms-id/website-logo-react

中文文档
0.2.2发布于 2026/10/21SEE LICENSE IN LICENSETypeScriptES Module

用于通信的React钩子和组件。ID网站标识字段:网站标识图像,可访问,无布局移位,具有数据属性

此软件包已被标记为弃用

Removed. Comms.ID products are served live, nothing to install: https://cdn.comms.id/website-logo-lookup/latest.js

中文使用文档
文档目录3 节
  1. 图像的作用
  2. 您自己的标记: useWebsiteLogo
  3. 组件

@comms-id / website-logo-react

一个React钩子和一个用于通信的成品组件。网站标志图像:网站的标志,在一个固定大小的方框中,以字母作为后退。没有布局变化,访问者的浏览器只接触Comms.ID。React 18或更高版本;这取决于 @comms-id/website-logo 没有别的了。

import { createWebsiteLogoBrowserClient } from "@comms-id/website-logo/browser";
import { WebsiteLogoImage } from "@comms-id/website-logo-react";

const client = createWebsiteLogoBrowserClient({ relayUrl: "/api/comms-id/logo" });

export const Customer = () => <WebsiteLogoImage client={client} site="example.com" size={48} />;

relayUrl 您自己的服务器路由,设置与 @comms-id/relay您的服务器将调用签名为您注册的应用程序,因此浏览器不持有凭据。

图像的作用

  • 一个网站: 主机名如 example.com,或URL。立即要求服务;对于空的或无效的站点不要求任何内容。
  • 图像 是Comms。中指定的ID副本 resolution.imageUrl,从… api.comms.id (或 api-test.comms.id). 上游 logoUrl 永远不会被加载:访问者的浏览器只会接触到通信。ID,这样访问者的地址就不会被发送给第三方。回复中提到了其他主机的名字,显示为信件。
  • 这个盒子 从第一次渲染开始就有它的大小,所以当图像加载时页面永远不会移动。网站的第一个字母显示在图像加载和没有图像时(服务没有,调用失败,或浏览器无法加载图像)。这个盒子是一个命名的图像(<site> logo,或者你的 alt)。
  • 失败的调用永远不会显示为“no logo”:它会触发 comms-id-error (信留在那里)。
const logo = useWebsiteLogo({ client, site });
const picture = logo.getImageProps();
return (
  <span {...logo.getBoxProps()}>
    {logo.state.monogram}
    {picture === undefined ? null : <img {...picture} />}
  </span>
);

getBoxProps 使该框成为一个命名图像。 getImageProps 在Comms上有图像之前是未定义的。ID主机,携带 referrerPolicy="no-referrer" 以及取回信件的错误处理程序。自己设计盒子的样式:给它一个固定的大小。

组件

道具: client 和 site (要求; site 可能在你不知道的时候没有定义), alt (默认为“logo”), size (像素,8到512;默认48), className, onResult, onFallback (missing, blocked 或者 failed), onError, extraOrigins (开发主机)。

使用自定义属性对其进行样式化 --comms-id-text, --comms-id-surface, --comms-id-border, --comms-id-radius 或者是 comms-id-website-logo__* 类名。它不需要样式表。它在服务器上呈现相同的框、名称和字母(没有图像:浏览器要求图像)。

您的内容安全策略需要 img-src https://api.comms.id (和 https://api-test.comms.id 对于TEST服务),而没有其他映像主机。

LICENSE 是消费者客户牌照。 src/ 是由 @comms-id/forge-transformers 而且从来没有手工编辑过。

版本与发布记录

@comms-id/website-logo-react 共发布 2 个版本,首次发布于 2026/10/21;过去 12 个月发布了 2 个版本。

版本发布日期距今
0.2.2latest2026/10/2112 天前
0.0.0-stage2026/10/2112 天前

关于 @comms-id/website-logo-react 的常见问题

@comms-id/website-logo-react 是什么?

用于通信的React钩子和组件。ID网站标识字段:网站标识图像,可访问,无布局移位,具有数据属性注意:该包已被作者标记为弃用——Removed. Comms.ID products are served live, nothing to install: https://cdn.comms.id/website-logo-lookup/latest.js

如何安装 @comms-id/website-logo-react?

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

@comms-id/website-logo-react 支持 TypeScript 吗?

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

@comms-id/website-logo-react 支持 ESM 还是 CommonJS?

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

@comms-id/website-logo-react 可以商用吗?

@comms-id/website-logo-react 使用 SEE LICENSE IN LICENSE 许可。许可条款写在包内的独立文件中,请阅读该文件确认可否商用。以上为概括,不构成法律意见,请以许可原文为准。

@comms-id/website-logo-react 还在维护吗?

最新版本 0.2.2 发布于 2026/10/21(12 天前);至今共发布 2 个版本,其中过去 12 个月发布了 2 个;首次发布于 2026/10/21。作者已将其标记为弃用,新项目建议寻找替代方案。