包
包
复制页面
的 Lia SDK 作为 npm 包。一个类型化的桥梁,一个可树摇的 SDK,以及 React、Preact、Vue、Svelte、Solid、Angular 和 Web Components 的绑定。
的 脚本标签 是最快的方式。如果您的应用有构建步骤,npm 包会为您提供相同的 SDK,带有 TypeScript 类型,您可以树摇的导入,适合您框架的状态,以及一个用于在应用外构建的假 Lia。
#哪个包
| 包 | 用于 |
|---|---|
@lia-labs/sdk | 任何带有打包器的应用,无论是否有框架。 |
@lia-labs/sdk-react | React:类似 useInit, useMainButton, useBackButton. |
@lia-labs/sdk-preact | Preact:相同的钩子。 |
@lia-labs/sdk-vue | Vue 3:返回引用的组合式 API。 |
@lia-labs/sdk-svelte | Svelte 4 和 5:存储。 |
@lia-labs/sdk-solid | 稳固:访问器和 create* 基本元素。 |
@lia-labs/sdk-angular | Angular 17 及更高版本: inject* 功能和信号。 |
@lia-labs/elements | 任何页面,无框架: <lia-main-button> 和朋友。 |
@lia-labs/bridge | 低级消息,用于构建你自己的层。 |
每个框架包重新导出整个 SDK,因此只需一个导入即可:
npm install @lia-labs/sdk @lia-labs/sdk-reactimport { pay, useInit, useMainButton } from '@lia-labs/sdk-react';#它们如何配合
- @lia-labs/bridgeLia的框架消息,输入:
request('pay', { productId }),on('theme', …)。和mockLia(),一个用于在桌面浏览器中构建的假 Lia。 - @lia-labs/sdk每个功能作为命名导出(
init,pay,mainButton,cloudStorage…),与脚本标签相同的检查和错误代码。它的状态(主题、语言、视口…)是一组小的可观察值。 - 框架包细粒度:他们将这些值转换为钩子、引用、存储或信号,并将Lia的按钮与你的组件关联,在挂载时显示并在之后隐藏。
#您可以观察的状态
的 SDK'的状态是一组 Readable 值: get() 现在读取一个,并且 subscribe(listener) 听到每个更改(带有新值和旧值)并返回一个停止监听的函数。它们从Lia更新'的事件之后 init().
| 值 | 类型 |
|---|---|
player | { id, name } 或 null 之前 init() |
mode | "test", "live" 或 null |
language, rtl | 这个人'的语言在Lia中,以及它是否从右到左阅读 |
colorScheme, themeParams | "light" 或 "dark",以及 Lia'的颜色 |
viewport | { height, expanded } |
safeArea, contentSafeArea | { top, bottom, left, right } 以像素为单位 |
display, isFullscreen | 应用是如何打开的,以及是否'边缘到边缘 |
startParam | 它最初打开时的内容,保持打开时更新 |
soundOn, notificationsAllowed, notificationsAvailable | 这个人'的选择 |
initialized | 是否 init() 已经回答 |
每个框架包都有一个对应的钩子、可组合项、存储或信号。
#脚本标签仍然有效
https://api.lialabs.org/sdk/lia-apps-v1.js (全局 Lia)未更改。使用它或页面上的包,不要两者都用:两者都会监听 Lia's 在同一频道上的回答,第二个加载的可以't.
#版本
这些套餐说明了SDK 1.8.1. A Lia 应用程序比一个功能更早 unknown_method; 查看 更新日志.
自动翻译。英语是真实来源。 阅读英文