diff --git a/Makefile b/Makefile index b0da34a..eab2b09 100644 --- a/Makefile +++ b/Makefile @@ -1,36 +1,36 @@ .PHONY: hello hello: rm -f ./html/* - GOOS=js GOARCH=wasm go1.11rc2 build -o ./html/test.wasm ./hello/main.go - cp $$(go1.11rc2 env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html - cp $$(go1.11rc2 env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js + GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./hello/main.go + cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html + cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js .PHONY: channels channels: rm -f ./html/* - GOOS=js GOARCH=wasm go1.11rc2 build -o ./html/test.wasm ./channels/main.go - cp $$(go1.11rc2 env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html - cp $$(go1.11rc2 env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js + GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./channels/main.go + cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html + cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js .PHONY: js js: rm -f ./html/* - GOOS=js GOARCH=wasm go1.11rc2 build -o ./html/test.wasm ./js/main.go - cp $$(go1.11rc2 env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html - cp $$(go1.11rc2 env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js + GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./js/main.go + cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html + cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js sed -i -e 's;;\n\t
;' ./html/index.html .PHONY: fetch fetch: rm -f ./html/* - GOOS=js GOARCH=wasm go1.11rc2 build -o ./html/test.wasm ./fetch/main.go - cp $$(go1.11rc2 env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html - cp $$(go1.11rc2 env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js + GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./fetch/main.go + cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html + cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js sed -i -e 's;;\n\t;' ./html/index.html .PHONY: jsgo jsgo: - wasmgo -c=go1.11rc2 deploy github.com/johanbrandhorst/wasm-experiments/jsgo + wasmgo -c=go deploy github.com/johanbrandhorst/wasm-experiments/jsgo serve: go run main.go diff --git a/README.md b/README.md index 51706c1..486e8dc 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,4 @@ Just some playing around with the new experimental Go WASM arch target ## Requirements -Requires `go1.11rc2` +Requires `go` 1.11 diff --git a/fetch/main.go b/fetch/main.go index 1b35f0d..383a7b7 100644 --- a/fetch/main.go +++ b/fetch/main.go @@ -7,23 +7,28 @@ import ( "log" "net/http" "strings" - - "github.com/dennwc/dom" + "syscall/js" ) -type writer dom.Element +var document js.Value + +func init() { + document = js.Global().Get("document") +} + +type writer js.Value // Write implements io.Writer. func (d writer) Write(p []byte) (n int, err error) { - node := dom.GetDocument().CreateElement("div") - node.SetTextContent(string(p)) - (*dom.Element)(&d).AppendChild(node) + node := document.Call("createElement", "div") + node.Set("textContent", string(p)) + js.Value(d).Call("appendChild", node) return len(p), nil } func main() { - t := dom.GetDocument().GetElementById("target") - logger := log.New((*writer)(t), "", log.LstdFlags) + t := document.Call("getElementById", "target") + logger := log.New((*writer)(&t), "", log.LstdFlags) c := http.Client{} req, err := http.NewRequest( diff --git a/html/test.wasm b/html/test.wasm index 9b4b5b1..6e6467f 100755 Binary files a/html/test.wasm and b/html/test.wasm differ