主题参数 该组件包含 Telegram 应用程序当前使用的 主题 信息。 初始化要初始化组件,请使用 initThemeParams 函数: - import { initThemeParams } from '@telegram-apps/sdk';
: Z& J0 X# c' `4 J! b* }' n% T
! L9 @) n: s5 Y/ A7 _- const [themeParams] = initThemeParams();
复制代码 索取实际数据要获取实际的主题参数信息,开发人员可以使用 requestThemeParams 函数: - import { requestThemeParams } from '@telegram-apps/sdk';8 d, t/ s. ^( v
- 2 I# B' L/ u5 B" m
- requestThemeParams.then(console.log);- J0 j/ Z) L. L! ~. A1 J
- 2 k: ~6 x7 T# `- o# B0 o' z
- // Output:; u1 z: c) s+ `1 F+ V
- // { bgColor: '#ffaabb', ... }
复制代码 颜色开发人员可以使用 get 方法获取主题颜色: - themeParams.get('bgColor');9 g" C! v4 q8 Y9 G( p
- themeParams.get('packageUnknownColor');
复制代码 要通过一个对象获取所有颜色,请使用 getState 方法:- themeParams.getState();
: W0 ~9 T, r2 N7 K - // Output:6 L4 M2 o3 _$ r8 r& D
- // {+ }1 m) }( }( o: p# B
- // accentTextColor: '#aa1399'," s! m! d" [9 i, M! O. |4 D
- // bgColor: '#baac12',* j2 g6 z9 ]5 j& ^4 X
- // linkColor: '#887722'
# i* X+ \0 o( x: I! G - // packageUnknownColor: '#676767,
( Z8 l' G% e9 _ j% ]8 e0 k - // }
复制代码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; {0 i1 s8 B \# Y( L$ v
2 S/ a# A$ i. g t8 B; i9 s
例如
) N6 a0 ^$ g9 i" T' m- themeParams.accentTextColor; // '#aa1399'
复制代码 & \& _3 U0 i( w
' ~" T2 ~: h6 c* A8 _% w事件可被 跟踪 的事件列表:
1 I' ^! `, V; E; D事件 | 监听器 | 触发条件 | change | () => void | 组件中的某些部分发生了变化 | change:{theme_key} | (value: RGB) => void | 更改指定键的颜色 | ; A& f# y- e, ]6 g! `9 j
|