主按钮 负责 Telegram Mini Apps main button 的💠组件。 安装在使用该组件之前,有必要将其安装到配置正确的 属性中。 为此,请使用 mount 方法。 它将更新 isMounted 信号属性。 Variable : - import { mainButton } from '@telegram-apps/sdk';' q% g4 s! u8 y$ `; Y9 ~! y9 U
- 5 B* J% O# ~9 l7 J* V
- mainButton.mount();
6 v0 y3 P. A; C. V - mainButton.isMounted(); // true
复制代码Functions : - import { mountMainButton, isMainButtonMounted } from '@telegram-apps/sdk';# ^5 {0 x5 _; N( {* I' \$ b
- 6 p% A7 E7 U7 d% r. a# \8 p1 j4 Y
- mountMainButton();; r7 I9 z4 f O- z6 C
- isMainButtonMounted(); // true
复制代码 4 c3 a0 A8 v, E: H! E# m2 l, y' I
要卸载,请使用 unmount 方法: Variable : - mainButton.unmount(); , u, m9 N- c+ {& c7 X$ h: n3 K& Q
- mainButton.isMounted(); // false
复制代码Functions : - import { unmountMainButton, isMainButtonMounted } from '@telegram-apps/sdk';
3 z5 x/ n8 e' {. b - ' I* R0 n: R* G
- unmountMainButton();; J$ a" t) ~0 x+ h( `; b& `
- isMainButtonMounted(); // false
复制代码WARNING 该组件的属性取决于 主题参数 组件中的值。 使用主按钮前,请务必安装主题参数。 设置属性要更新按钮属性,请使用 setParams 方法。 它接受一个带有可选 属性的对象,每个属性负责各自的按钮特性。 反过来,调用该方法会更新 ,如 backgroundColor, hasShineEffect, isVisible, isEnabled, isLoaderVisible, state, textColor 和 text。 Variable : - mainButton.setParams({5 V' n0 `! @* m" F l* E; \) k) C( t
- backgroundColor: '#000000',! E# [1 E* F2 f) i2 _1 O
- hasShineEffect: true," _7 j3 C; \: E3 P* T, K
- isEnabled: true,
7 f2 I1 n. k+ ]& |" A4 l6 x0 I - isLoaderVisible: true,9 N' j3 i8 U4 S- o F- {: x
- isVisible: true,% w: e- d. b& X8 b" c, ^* G: H
- text: 'My text',
+ D' X$ z0 z$ F* E - textColor: '#ffffff'
, k8 Z7 h/ k& s+ f( ] - });% Q% n6 ]; c( i/ ^6 Q6 b
- mainButton.backgroundColor(); // '#000000'; O3 T. Z. n7 i. u; p, y4 f+ r$ y
- mainButton.hasShineEffect(); // true: y6 P! F% _1 u/ T7 n
- mainButton.isEnabled(); // true" @: h2 ~/ b1 {$ {
- mainButton.isLoaderVisible(); // true
5 \+ |; F" l) p" J - mainButton.isVisible(); // true
3 \! s- h5 ~+ q* s2 t0 i6 \ - mainButton.text(); // 'My text'# J3 I p6 ]+ o7 Q; S
- mainButton.textColor(); // '#ffffff'
; i8 a, T: l9 L! V# }3 J5 O
& I8 P. R! s w c- mainButton.state();- L f2 F& L' k, B" R( Z# F g
- // {
; y3 A5 Q. t- n% U, \9 b; l - // backgroundColor: '#000000',5 J! W, i) I1 q. G: R! a
- // hasShineEffect: true,
3 ]5 }3 i% ]" e5 }3 h - // isActive: true,7 \, j6 ?) ~. ^8 s
- // isLoaderVisible: true,0 x/ ]8 A* }" `0 i5 O* ^
- // isVisible: true,
8 x' r5 B# i* w1 u& r) i* j - // text: 'My text',
$ F8 U5 n7 s! P. x( a - // textColor: '#ffffff'9 o5 p8 _$ L B. F8 S1 [, B+ C( F
- // }
复制代码Functions : - import {
3 q1 a* L3 C! R) T - setMainButtonParams,
+ J ]6 \2 _; s% K4 `9 K* ~' b5 L2 l - mainButtonBackgroundColor,
: E7 e; P! F" t2 j4 @. x - mainButtonHasShineEffect,$ Y+ L3 I! ~$ u' r
- isMainButtonVisible,% W* ?# i/ w' w1 B1 G+ S; b1 M
- isMainButtonEnabled,: P/ u& L0 y# ?0 ~0 G/ U
- isMainButtonLoaderVisible,& m. ?" z& Z- R' w9 r& W% m& F% N
- mainButtonState,: b! C3 d3 j3 D3 D2 D" m
- mainButtonTextColor,
4 m+ H) v$ i) e: ] - mainButtonText,* b4 K6 M8 R1 M5 d% m
- } from '@telegram-apps/sdk';
+ U0 F( `/ ]- H - * n- S5 ?3 \2 b2 q5 }& {
- setMainButtonParams({
) k2 z7 l& m7 S# L - backgroundColor: '#000000',
6 M _% ^- U* Z; x4 X - hasShineEffect: true,
6 A) c# N$ @ s9 K# V - isEnabled: true,
5 y/ T* W3 [2 ?* I( C* I - isLoaderVisible: true,0 a5 q0 Y+ _8 r. N0 t2 u( ?# f4 o
- isVisible: true,
_" o9 F7 r+ ~ - text: 'My text',, ` l; O( l3 m( _" k2 g
- textColor: '#ffffff'9 j1 @; J/ T& H! R, |( j
- });
+ w2 S2 L. A( x: |: n* \ - mainButtonBackgroundColor(); // '#000000'
0 z! Y8 f* p8 C7 d' C; r - mainButtonHasShineEffect(); // true
9 b. B6 H! r9 T! C3 J - isMainButtonEnabled(); // true4 z) P* L1 e" D5 z
- isMainButtonLoaderVisible(); // true
* M( N5 i4 \3 v# i# \' o - isMainButtonVisible(); // true3 U7 |0 w; s* y$ I! M9 k7 X( t
- mainButtonText(); // 'My text'8 n+ L4 g5 l2 ~5 K7 Q
- mainButtonTextColor(); // '#ffffff'
: J2 h) J1 A" f. y - 6 Z5 s# W2 `" ?, K
- mainButtonState();
8 ~3 J* f" C: q9 O. S: ? - // {
/ T6 u5 q T( W& B# F, P - // backgroundColor: '#000000',5 @6 {* {' Q' g! l. z
- // hasShineEffect: true,
0 _) a8 X1 G0 X8 Q - // isActive: true,
4 w' e$ `: W5 L* w5 P; O5 C5 E - // isLoaderVisible: true,
) U3 Y. O3 \% Z7 H/ D$ [; s - // isVisible: true,3 J8 P$ W% |9 j& ~! }
- // text: 'My text',$ g" J* t$ A9 [5 Q0 I3 B
- // textColor: '#ffffff'+ g& B5 |/ w' Q' Q( A6 i* A
- // }
复制代码 跟踪点击要添加按钮点击监听器,请使用 onClick 方法。 它返回一个函数,用于移除绑定的 监听器。 或者,您也可以使用 offClick 方法。 Variable : - function listener() {' ]7 Z& F8 }2 r: D2 Y0 H
- console.log('Clicked!');
0 E' g3 P% |1 t/ N# ~, L - }
' p* e- K' m' U/ X - / q" Y+ w/ S2 S7 A% c" s* |. F
- const offClick = mainButton.onClick(listener);& L) F) S! T8 U$ c" E( {6 \
- offClick();
5 S/ B: U" I6 K* O' U( ]! V - // or0 L6 ?. ]1 X r+ I# Y) F% ]) ^
- mainButton.onClick(listener);0 @* c4 a/ w6 O( L3 s( V
- mainButton.offClick(listener);
复制代码Functions : - import {
- z' s/ h$ L5 b# F - onMainButtonClick," o h% }9 }' E, p; g
- offMainButtonClick,4 Q- F- R$ r& o0 Z5 A
- } from '@telegram-apps/sdk';' e% F. w5 \) u0 v* ?9 {, q
' z2 t) p+ D n* Z! i! f- function listener() {
3 z$ h& @' e4 y+ R: `, n7 I" K - console.log('Clicked!');
. p7 n9 c/ d& m- z1 E) a - }0 d5 D) p2 T& G W' \4 i
9 [8 W+ m% e; N8 ]" J1 \- const offClick = onMainButtonClick(listener);4 s; r9 @* k# `: }6 x0 d. y
- offClick(); X. U- t# v3 q& Y9 ?) f6 K9 m
- // or
* d8 t0 w- ^9 \9 w8 S( P: y - onMainButtonClick(listener);# Q1 t8 ~- i& B$ D: x' J
- offMainButtonClick(listener);
复制代码
% A2 Y5 ~- B7 j/ b: p: V
- d' T W0 V4 F) ^5 [6 F, s |