♻️ Promise: More idiomatic Go...

This commit is contained in:
Nicolas Lepage
2021-01-27 23:21:59 +01:00
parent 896b5a3cee
commit b3e8d72ed1
5 changed files with 34 additions and 35 deletions

View File

@@ -26,25 +26,25 @@ func Serve(handler http.Handler) func() {
}
var cb = js.FuncOf(func(_ js.Value, args []js.Value) interface{} {
var resPromise = NewPromise(func(resolve func(interface{}), reject func(interface{})) {
go func() {
defer func() {
if r := recover(); r != nil {
if err, ok := r.(error); ok {
reject(fmt.Sprintf("wasmhttp: panic: %+v\n", err))
} else {
reject(fmt.Sprintf("wasmhttp: panic: %v\n", r))
}
var resPromise, resolve, reject = NewPromise()
go func() {
defer func() {
if r := recover(); r != nil {
if err, ok := r.(error); ok {
reject(fmt.Sprintf("wasmhttp: panic: %+v\n", err))
} else {
reject(fmt.Sprintf("wasmhttp: panic: %v\n", r))
}
}()
var res = NewResponseRecorder()
h.ServeHTTP(res, Request(args[0]))
resolve(res)
}
}()
})
var res = NewResponseRecorder()
h.ServeHTTP(res, Request(args[0]))
resolve(res)
}()
return resPromise
})