diff --git a/etc/gh-pages/_js.go b/etc/gh-pages/_js.go index 90cd65a..375b4cc 100644 --- a/etc/gh-pages/_js.go +++ b/etc/gh-pages/_js.go @@ -16,22 +16,23 @@ func main() { document := js.Global().Get("document") in := document.Call("getElementById", "gowen-input") out := document.Call("getElementById", "gowen-output") - js.Global().Set("gowenRun", js.NewCallback(func([]js.Value) { + js.Global().Set("gowenRun", js.FuncOf(func(js.Value, []js.Value) interface{} { nodes, err := gowen.Parse(in.Get("value").String()) if err != nil { out.Set("textContent", fmt.Sprintf("%s", err)) - return + return nil } results, err := gowen.EvalMultiple(nodes, env) if err != nil { out.Set("textContent", fmt.Sprintf("%s", err)) - return + return nil } s := "" for _, result := range results { s += pretty.Sprint(result.ToGo()) + "\n" } out.Set("textContent", s) + return nil })) <-make(chan struct{}) // stay alive