go - fyne GUI 编译为 Web Assembly 失败

标签 go webassembly fyne

我正在检查使用 Web Assembly 在浏览器中使用 fyne 的可能性,但我收到错误...
主要Go:

package main

import (
    "fyne.io/fyne/v2/app"
    "fyne.io/fyne/v2/container"
    "fyne.io/fyne/v2/widget"
)

func main() {
    a := app.New()
    w := a.NewWindow("Hello")

    hello := widget.NewLabel("Hello Fyne!")
    w.SetContent(container.NewVBox(
        hello,
        widget.NewButton("Hi!", func() {
            hello.SetText("Welcome :)")
        }),
    ))

    w.ShowAndRun()
}

我运行了这个命令,

GOOS=js GOARCH=wasm go build -o main.wasm main.go 

输出(错误):

package command-line-arguments
    imports fyne.io/fyne/v2/app
    imports fyne.io/fyne/v2/internal/driver/glfw
    imports fyne.io/fyne/v2/internal/driver/common
    imports fyne.io/fyne/v2/internal/painter/gl
    imports github.com/go-gl/gl/v3.2-core/gl: build constraints exclude all Go files in /home/ahmed/go/pkg/mod/github.com/go-gl/gl@v0.0.0-20210813123233-e4099ee2221f/v3.2-core/gl

最佳答案

在浏览器中运行的能力现在正在测试中。您可以使用 Fyne develop 分支并安装该版本的 fyne 工具,然后运行:

$fyne 服务

它将通过端口 :8080 上的 Web 服务器加载您的 Fyne 应用程序。

关于go - fyne GUI 编译为 Web Assembly 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69272636/

相关文章:

Go HTTP Client 添加服务不支持的分块编码

Go-yaml control characters are not allowed 错误

javascript - WebAssembly 应用程序如何将其 native Window/OpenGL/Vulkan 调用映射到 DOM 中的 Canvas 元素?

go - 在多行 Fyne Entry 小部件中捕获 Enter (更一般地,调用 "parent classes")

go - Fyne 列表小部件无法正确显示项目

go - 如何使用 Go 模块修复 Go build error "can' t load package"?

go - 为什么分解导入语句更好?

javascript - 如何将 WebAssembly 文本格式 (.wat) 的程序转换为 JavaScript 中的二进制格式?

javascript - 在 npm 上发布 wasm 库的首选方式是什么?