不启动 web 服务器

设置工作目录为 $GOPATH/src/ele/gopherjs/js/t5,写 index.html 文件,内容为:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="t5.js"></script>
</head>
<body>

</body>
</html>

写 t5.go 文件, 内容为:

package main

func main() {
	println("hello world")
}

执行命令:

gopherjs build -w $(go list)

会把当前目录的包,即 ele/gopherjs/js/t5 包编译为 js,输出到 t5.js 文件,同时会输出 source map 到 t5.js.map 文件。

然后浏览器访问地址 file:///$GOPATH/src/ele/gopherjs/js/t5/index.html ,按 F12 打开控制台,就能看到输出 hello world 了。

由于给 gopherjs build 加了 -w 选项,它就会监控文件变化,然后重新生成 js 文件,手动刷新浏览器就能看到效果。不光增加一个 go 文件,就算是增加一个文件夹 比如 util,然后增加文件 util/util.go,再在 t5.go 中导入这个 util 包,再修改文件 util/util.go,也是可以探测到文件改变的。测试过非当前目录下的包 ,比如 ele/gopherjs/js/t4/util,也能探测到 t4/util 包的 go 文件改变。 应该会监控所有导入的 go 文件。

05-01 05:33