English 简体中文 繁體中文 한국 사람 日本語 Deutsch русский بالعربية TÜRKÇE português คนไทย french

简体中文 繁體中文 English 日本語 Deutsch 한국 사람 بالعربية TÜRKÇE คนไทย Français русский

回答

收藏

Telegram 小程序 | TypeScript @telegram-apps/sdk @1.x | 组件 | 云存储

开源社区 开源社区 7316 人阅读 | 0 人回复 | 2025-02-22

执行与 Telegram 迷你应用程序云存储相关的功能。* z  K: C, @3 U) v
初始化

要初始化组件,请使用initCloudStorage函数:

  1. import { initCloudStorage } from '@telegram-apps/sdk';
    $ R) f$ T, N& S. F" @, f5 V

  2. 2 q" M& u( y# x, G( j( E
  3. const cloudStorage = initCloudStorage();
复制代码
设置项目

要在云存储中保存一个值,需要使用 set 方法:

  1. cloudStorage2 p& p( H# M: x3 {
  2.   .set('my-key', 'my-value')+ }3 e0 }( o' t7 A6 e  w
  3.   .then(() => console.log('Item saved'));
复制代码
获取项目

要按键获取值,需要使用 get 方法,该方法可获取单个字符串 值和字符串值数组:

Single value :

  1. cloudStorage, o) h- N; ^- J# |5 `; W
  2.   .get('my-key')' @$ G0 S% z$ E6 ]$ J
  3.   .then((value) => {
    % w0 e! `, Z; r& e2 E) k3 d5 v
  4.     console.log(value);
    2 J3 W+ e$ o# J
  5.     // Output: 'my-value'
      N7 d9 N$ Q) `! W7 F
  6.   });
    ; ^5 f) B" c" q5 r* W- V

  7. 8 H0 c3 x0 i! J) u  B- p$ V
  8. cloudStorage
    6 X$ u# W5 m5 ?/ p5 @7 ^
  9.   .get('non-existent')
    2 s4 N5 \, o$ ?5 ~) S
  10.   .then((value) => {0 N6 R+ q! X" v. o  [: i
  11.     console.log(value);
    * A& k7 ~# Z& F1 N! a6 ?8 X: \
  12.     // Output: '') ?" t+ r& C- z5 ~, m4 N
  13.   });
复制代码

Array of values :

  1. cloudStorage! s8 ?+ i- ?; ?% V
  2.   .get(['my-key', 'non-existent'])
    # D8 ?8 `3 u) x1 f' k* k2 H
  3.   .then((result) => {
    : q( c$ X, r1 r3 y3 y
  4.     console.log('Result is', result);
    3 F9 s. R* j# D* O
  5.     // Output:
    . }& i0 n. R# D( Y- F
  6.     // {
    2 j2 x/ \. t# d% z
  7.     //   'my-key': 'my-value',
    8 s8 [2 ]* G( g1 J3 Z* q
  8.     //   'non-existent': '': P; s, ]* ~; l
  9.     // }/ Z$ @  \  D0 M+ E
  10.   });
复制代码

对于云存储中不存在的键,该方法会返回空字符串。


# Z) b; T" f% v4 g* J( u, g获取钥匙

要检索云存储中的所有注册密钥,需要使用 getKeys 方法:

  1. cloudStorage0 G$ p" z( H, l! D
  2.   .getKeys()- u& Y7 F2 ?" b8 ^
  3.   .then((keys) => {
    9 T( h% `' h; _7 V8 D5 q
  4.     // Will be ['my-key'].
    / |% e0 n1 k# y* K4 N. F
  5.     console.log('Keys are', keys);4 k1 ~  r4 c  e, U
  6.   })
复制代码
删除项目

要删除云存储中的项目,需要使用 "删除 "方法。 这种方法允许 删除单个和多个项目:

single items :

  1. cloudStorage9 O& P6 P2 w4 L  u: S/ _
  2.   .delete('my-key')9 k; j. q* W+ ^" U! Y
  3.   .then(() => console.log('Key was deleted'));
复制代码
multiple items :
4 y! C2 Y" {0 r! Z! v3 e
  1. cloudStorage
    ( i6 A' e4 V4 K3 [, t3 L. {: t+ h8 L3 f
  2.   .delete(['my-key', 'another-key'])8 U! g$ M  ?8 v( k/ c% n4 o
  3.   .then(() => console.log('Keys were deleted'));
复制代码
方法支持

方法列表,可用于 支持检查:delete、get、getKeys 和 set。

& z- H6 g7 R7 f/ I8 c
! q- P3 K, u' `' J5 [& k

3 `3 c' o. Z+ Z4 _1 Z' s
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则