主题参数 该组件包含 Telegram 应用程序当前使用的 主题 信息。 初始化要初始化组件,请使用 initThemeParams 函数: - import { initThemeParams } from '@telegram-apps/sdk';0 ?' J4 i& m1 d
- / t0 \9 S- f7 ~+ J, a
- const [themeParams] = initThemeParams();
复制代码 索取实际数据要获取实际的主题参数信息,开发人员可以使用 requestThemeParams 函数: - import { requestThemeParams } from '@telegram-apps/sdk';$ F8 K- O8 }& \3 }; l+ \* {& g1 G
$ I( t- g9 ^0 p0 T( S0 w- requestThemeParams.then(console.log);- G5 x3 N/ Z2 K( c5 f# a
- / Z7 _! W! B0 ]! m0 \
- // Output:& e$ g! m( o6 z5 i
- // { bgColor: '#ffaabb', ... }
复制代码 颜色开发人员可以使用 get 方法获取主题颜色: - themeParams.get('bgColor');
- V7 R! B* _0 T - themeParams.get('packageUnknownColor');
复制代码 要通过一个对象获取所有颜色,请使用 getState 方法:- themeParams.getState();
7 V% a+ I; ~+ F+ c7 Y# L* K" F7 X - // Output:( s( y, f$ `& i; ] x! V1 s
- // {3 V' x! @% g( S7 x. u( c+ r) K r9 F) C
- // accentTextColor: '#aa1399',
/ \6 w, A% ^1 R3 G. W& w* |3 K5 e+ i - // bgColor: '#baac12',; V$ G/ K1 r6 ?4 p1 ]8 o
- // linkColor: '#887722'
1 D! f: q- H- s' u) Y2 r - // packageUnknownColor: '#676767,: t+ N/ x4 m; K2 E
- // }
复制代码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& t2 [- z: r* w7 `2 z
# m, @; q6 m i+ d' I例如
( K1 w3 Z8 u5 H6 k- D# C& t/ ~. w- themeParams.accentTextColor; // '#aa1399'
复制代码
\0 Z; {$ Y, \: T. c- p' D
$ }+ ?) @* B) |0 _事件可被 跟踪 的事件列表:
6 _) {. @; Y$ a4 h5 U. O1 L/ e: ?事件 | 监听器 | 触发条件 | change | () => void | 组件中的某些部分发生了变化 | change:{theme_key} | (value: RGB) => void | 更改指定键的颜色 |
~5 t) | e, p: _4 `; D6 h |