Passer à la navigation

Méthodes d’instance

Contrôlez une instance de widget créée après TradingWidget.create().

Afficher en Markdown

Résumé de la méthode

MéthodeBut
détruire()Supprimez l’iframe et libérez les écouteurs d’événements.
getState()Lisez l’état actuel du cycle de vie de SDK.
whenReady()Attendez que l’iframe termine son initialisation.
setSymbol(symbole)Changez la paire de trading à l’intérieur de l’iframe.
setTheme(thème)Mettez à jour le paramètre du thème iframe.
setLocale(paramètres régionaux)Changez la langue iframe.
setSize(largeur, hauteur)Mettez à jour les dimensions de l’iframe.
recharger()Rechargez l’iframe actuelle.
refreshAuth(raison)Déclenchez le flux d’actualisation d’authentification du widget.
setTokenProvider(fournisseur)Remplacez le fournisseur utilisé par le mode jeton partenaire.
on (événement, gestionnaire)Abonnez-vous aux événements d’exécution et recevez une fonction de désabonnement.

détruire()

Supprimez l’iframe, effacez les écouteurs et émettez une fois détruite pour l’instance actuelle.

widget.destroy()

getState()

Lisez l’état actuel du cycle de vie de l’instance de widget.

const state = widget.getState()

Les valeurs de retour incluent le chargement, l’authentification, le prêt, l’erreur et la destruction.

whenReady()

Attendez que l’iframe termine l’initialisation avant d’exécuter la logique d’interface utilisateur dépendante.

await widget.whenReady()

setSymbol(symbole)

Changez la paire de trading à l’intérieur de l’iframe. Si l’iframe est encore en cours d’initialisation, le SDK met la commande en file d’attente et l’envoie une fois prête.

widget.setSymbol('ETHUSDT')

setTheme(thème)

Mettez à jour le paramètre de thème utilisé par l’iframe de trading intégré.

widget.setTheme('dark')
widget.setTheme('light')

setLocale(paramètres régionaux)

Changez la langue iframe. Les valeurs prises en charge sont en, en-US et zh-CN.

widget.setLocale('en')
widget.setLocale('en-US')
widget.setLocale('zh-CN')

setSize(largeur, hauteur)

Mettez à jour la taille de l’iframe DOM et informez l’iframe de la nouvelle taille extérieure. Les valeurs numériques sont converties en px.

widget.setSize('100%', 720)

recharger()

Rechargez l’iframe actuelle et attendez qu’elle s’initialise à nouveau.

widget.reload()

refreshAuth(raison)

Demandez à l’iframe d’actualiser le flux d’authentification actuel. La valeur facultative du motif est transmise pour la journalisation et le contrôle de flux.

widget.refreshAuth('manual')

setTokenProvider(fournisseur)

Remplacez le tokenProvider utilisé par le mode jeton partenaire. Le SDK appelle le fournisseur lorsque l’iframe demande un nouveau jeton d’intégration.

widget.setTokenProvider(async ({ channelId, symbol, reason }) => {
const resp = await fetch('/api/trading/embed-token', {
method: 'POST',
credentials: 'include',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ channelId, symbol, reason }),
})
return resp.json()
})

on (événement, gestionnaire)

Abonnez-vous à un événement d’exécution. La fonction renvoyée supprime l’écouteur.

const off = widget.on('order_created', (event) => {
console.log(event)
})
off()

Guides des widgets associés

Méthodes supplémentaires dans le runtime v1 actuel

MéthodeBut
whenRendered()Attendez la notification rendue par l’iframe ; ceci est distinct du prêt.
setPage(page)Demandez une page produit prise en charge dans l’instance actuelle. Cela ne change pas l’environnement des fonds.
prepareForRecreate()Demandez une iframe prête pour préparer le remplacement ; renvoie une promesse et peut la rejeter si elle est indisponible, occupée ou expirée.
cancelRecreate()Annulez un flux de remplacement en attente/préparé.
TradingWidget.validateOptions(options)Validez les options d’initialisation avant de créer une instance.

Pour un changement d’utilisateur ou d’environnement réel/de démonstration, détruisez l’ancienne instance et créez-en une nouvelle avec l’authentification et le mode cibles. N’utilisez pas setPage comme commutateur d’environnement. Vérifiez les fonctionnalités avant d’utiliser des méthodes facultatives.

if (TradingWidget.capabilities.methods.includes('whenRendered')) {
await widget.whenRendered();
}
if (TradingWidget.capabilities.pages.includes('up-down')) {
widget.setPage('up-down');
}