主题参数 该组件包含 Telegram 应用程序当前使用的 主题 信息。 初始化要初始化组件,请使用 initThemeParams 函数: - import { initThemeParams } from '@telegram-apps/sdk';, A; Z0 x6 M6 i# A6 j3 f( n
- + R0 T$ R# B: R2 s6 b! ~
- const [themeParams] = initThemeParams();
复制代码 索取实际数据要获取实际的主题参数信息,开发人员可以使用 requestThemeParams 函数: - import { requestThemeParams } from '@telegram-apps/sdk';
0 ]$ J4 @/ k$ J- n$ h- @6 H
0 q- |8 v$ ^0 j& A8 _- q, n/ K8 R- requestThemeParams.then(console.log);+ o+ L* Z2 c" r% E
- # Y' P4 i. K, C: n Y
- // Output:9 ^4 K8 g" U, z. f2 J
- // { bgColor: '#ffaabb', ... }
复制代码 颜色开发人员可以使用 get 方法获取主题颜色: - themeParams.get('bgColor');
0 b4 e: C) H* e. ? - themeParams.get('packageUnknownColor');
复制代码 要通过一个对象获取所有颜色,请使用 getState 方法:- themeParams.getState();" q- L( `4 e5 J
- // Output:+ i6 w! P; Y, @9 W: p, N0 [
- // {. d& _% N; Q f2 d/ a J2 ]
- // accentTextColor: '#aa1399',! P6 B& H; I7 t: K! ? w. M2 @$ d3 Y
- // bgColor: '#baac12',+ N3 W6 U% V. z0 Q' }& c- \
- // linkColor: '#887722'6 a7 s. _: A; c
- // packageUnknownColor: '#676767,
, Y" H& F. m& F - // }
复制代码ThemeParams 组件可直接访问颜色列表: - accentTextColor: RGB | undefined
- bgColor: RGB | undefined
- buttonColor: RGB | undefined
- buttonTextColor: RGB | undefined
- destructiveTextColor: RGB | undefined
- headerBgColor: RGB | undefined
- hintColor: RGB | undefined
- linkColor: RGB | undefined
- secondaryBgColor: RGB | undefined
- sectionBgColor: RGB | undefined
- sectionHeaderTextColor: RGB | undefined
- subtitleTextColor: RGB | undefined
- textColor: RGB | undefined' m0 ~+ c9 Z0 D& k, L
p3 C" o9 ]7 Z. X! \
例如0 u" p) Z' a- v2 P2 n: L& l; f$ \
- themeParams.accentTextColor; // '#aa1399'
复制代码
0 [& G' B+ P# C7 @' t6 l, k% g5 x3 l! {
事件可被 跟踪 的事件列表:
( |. v2 y% l/ \) @9 a事件 | 监听器 | 触发条件 | change | () => void | 组件中的某些部分发生了变化 | change:{theme_key} | (value: RGB) => void | 更改指定键的颜色 |
! f' z1 I9 C* D }6 Z |