Vai alla navigazione

Metodi di istanza

Controlla un’istanza del widget creata dopo TradingWidget.create().

Visualizza come Markdown

Riepilogo del metodo

MetodoScopo
distruggere()Rimuovi l’iframe e rilascia i listener di eventi.
getState()Leggi lo stato attuale del ciclo di vita SDK
whenReady()Attendi fino al completamento dell’inizializzazione dell’iframe.
setSymbol(simbolo)Cambia la coppia di trading all’interno dell’iframe.
setTheme(tema)Aggiorna il parametro del tema iframe.
setLocale(locale)Cambia la lingua dell’iframe.
setSize(larghezza, altezza)Aggiorna le dimensioni dell’iframe.
ricaricare()Ricarica l’iframe corrente.
refreshAuth(motivo)Attiva il flusso di aggiornamento dell’autenticazione del widget.
setTokenProvider(fornitore)Sostituisci il provider utilizzato dalla modalità token partner.
on(evento, gestore)Iscriviti agli eventi runtime e ricevi una funzione di annullamento dell’iscrizione.

distruggere()

Rimuovi l’iframe, cancella i listener ed emetti distrutti una volta per l’istanza corrente.

widget.destroy()

getState()

Leggere lo stato corrente del ciclo di vita dell’istanza del widget.

const state = widget.getState()

I valori restituiti includono caricamento, autenticazione, pronto, errore e distrutto.

whenReady()

Attendi che l’iframe termini l’inizializzazione prima di eseguire la logica dell’interfaccia utente dipendente.

await widget.whenReady()

setSymbol(simbolo)

Cambia la coppia di trading all’interno dell’iframe. Se l’iframe è ancora in fase di inizializzazione, SDK mette in coda il comando e lo invia dopo essere pronto.

widget.setSymbol('ETHUSDT')

setTheme(tema)

Aggiorna il parametro del tema utilizzato dall’iframe di trading incorporato.

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

setLocale(locale)

Cambia la lingua dell’iframe. I valori supportati sono en, en-US e zh-CN.

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

setSize(larghezza, altezza)

Aggiorna la dimensione dell’iframe DOM e notifica all’iframe la nuova dimensione esterna. I valori numerici vengono convertiti in px.

widget.setSize('100%', 720)

ricaricare()

Ricarica l’iframe corrente e attendi che venga inizializzato nuovamente.

widget.reload()

refreshAuth(motivo)

Chiedi all’iframe di aggiornare il flusso di autenticazione corrente. Il valore del motivo facoltativo viene inoltrato per la registrazione e il controllo del flusso.

widget.refreshAuth('manual')

setTokenProvider(fornitore)

Sostituisci il tokenProvider utilizzato dalla modalità partner-token. Il SDK chiama il provider quando l’iframe richiede un nuovo token di incorporamento.

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(evento, gestore)

Sottoscrivere un evento di runtime. La funzione restituita rimuove il listener.

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

Guide relative ai widget

Metodi aggiuntivi nel runtime v1 corrente

MetodoScopo
whenRendered()Attendi la notifica di rendering dell’iframe; questo è separato da pronto.
setPage(page)Richiedi una pagina di prodotto supportato nell’istanza corrente. Non cambia l’ambiente dei fondi.
prepareForRecreate()Richiedi un iframe pronto per prepararsi alla sostituzione; restituisce una promessa e può rifiutarla se non disponibile, occupato o in timeout.
cancelRecreate()Annulla un flusso di sostituzione in sospeso/preparato.
TradingWidget.validateOptions(options)Convalida le opzioni di inizializzazione prima di creare un’istanza.

Per modificare un utente o un ambiente reale/demo, distruggi la vecchia istanza e creane una nuova con l’autenticazione e la modalità di destinazione. Non utilizzare setPage come interruttore ambientale. Verificare le funzionalità prima di utilizzare metodi opzionali.

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