@appsemble/preact

中文文档
0.40.9发布于 2026/10/30LGPL-3.0-onlyTypeScriptES Module零依赖构建来源已验证近 30 天下载 1939

使用 Preact 构建自己的块

中文使用文档
文档目录7 节
  1. 目录
  2. 安装
  3. 使用量
  4. bootstrap()
  5. useBlock()
  6. <FormattedMessage />
  7. 许可证

应用 Preact SDK

使用 Preact 构建自己的块

npm GitLab CI Prettier

目录

安装

npm install @appsemble/preact preact

使用量

此软件包集成 预录 与 @appsemble/sdk请阅读文档 更了解如何使用它.

bootstrap()

拖曳函数将 Preact 组件作为参数并生成 。 它需要像样的东西 块上下文作为其道具,随 ready() 函数。 这个 ready() 函数需要 当块完成渲染时调用。 行动不会在页面上完成, 直到所有街区都准备好了.

import { bootstrap } from '@appsemble/preact';
import { useEffect } from 'preact/hooks';

bootstrap(({ actions }) => {
  useEffect(() => {
    ready();
  }, []);

  return (
    <button onClick={() => actions.onClick()} type="button">
      Hello world!
    </button>
  );
});

说明: 剧本只装入一次. 部件会被拖入每个实例 由应用程序创建者加载的块类型.

useBlock()

获取块背景。 用于在树下树下生产的组件 提供组件 bootstrap

import { useBlock } from '@appsemble/preact';
import { type VNode } from 'preact';

export function MyButton(): VNode {
  const { actions } = useBlock();

  return (
    <button onClick={() => actions.onClick()} type="button">
      Hello world!
    </button>
  );
}

<FormattedMessage />

此帮助组件会生成一个已翻译的消息ID .

import { FormattedMessage } from '@appsemble/preact';
import { type VNode } from 'preact';

interface MyButtonProps {
  readonly name: string;
}

export function MyButton({ name }: MyButtonProps): VNode {
  return (
    <button type="button">
      <FormattedMessage id="myButtonLabel" values={{ name }} />
    </button>
  );
}

许可证

LGPL-3.0 仅限 © 应用

版本与发布记录

@appsemble/preact 共发布 367 个版本,首次发布于 2020/03/21;过去 12 个月发布了 62 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.40.9latest2026/10/309 天前
0.40.82026/10/309 天前
0.40.72026/10/2910 天前
0.40.7-node-brotli.0next2026/10/2712 天前
0.40.62026/10/2415 天前
0.40.52026/10/1623 天前

关于 @appsemble/preact 的常见问题

@appsemble/preact 是什么?

使用 Preact 构建自己的块

如何安装 @appsemble/preact?

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

@appsemble/preact 支持 TypeScript 吗?

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

@appsemble/preact 支持 ESM 还是 CommonJS?

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

@appsemble/preact 可以商用吗?

@appsemble/preact 使用 LGPL-3.0-only 许可。弱 Copyleft:作为库被调用时通常不要求开源你自己的代码,但修改库本身需以 LGPL 开源;前端打包合并后的适用边界存在不同理解。以上为概括,不构成法律意见,请以许可原文为准。

@appsemble/preact 的下载量有多少?

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

@appsemble/preact 还在维护吗?

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