Как справиться с обещанием JS в Go

Я пишу эту программу для WebAssembly, и мне нужно подождать, пока обещание JS будет решено. Как это сделать?

Весь код (есть и вторая ошибка, и я не знаю, как с ней бороться):

package main

import (
    "syscall/js"
    "time"
)

func setIntervalAsync(function js.Value, timeout js.Value, getState js.Value){
    _timeout := timeout.Int()
    Start:
    time.Sleep(time.Duration(_timeout) * time.Millisecond)
    function.Invoke().Await()
    // function.Invoke().Await undefined (type js.Value has no field or method Await)
    canceled := getState.Invoke().Bool()
    if(!canceled){ goto Start }
}

func main() {
    setFunction := js.Global().Get("&#!go_intermediate_D6&W#R&@87ycm")
    callback := js.NewCallback(setIntervalAsync)
    // undefined: js.NewCallback
    defer callback.Release()
    setFunction.Invoke()
}

0 ответов

Другие вопросы по тегам