WailsでのGoとJS側でのEventsのやりとりについて
基本的に下記を見ればOK
イベントの送り方は EventsOn
とか EventsOnce
とか複数あるが、ひとまずどうやって送るかのサンプルだけ下記に書き残しておく。
GoからJS側にイベントを送る場合
Goでは下記のようにEventsを設定する
※コードはかなりいい加減に省略しています
import "github.com/wailsapp/wails/v2/pkg/runtime" // a.ctx: context.Context runtime.EventsEmit(a.ctx, "testevent", "テスト)
そしてJS側では下記のようにEventsを受け取る。
import { EventsOn } from "../wailsjs/runtime/runtime"; EventsOn("testevent", (msg: string) => { console.log(msg) });
JSからGo側にイベントを送る場合
JS側では下記のようにEventsを設定する
import { EventsEmit } from "../wailsjs/runtime/runtime"; EventsEmit("testevent", "テスト")
Goでは下記のようにEventsを受け取る。
import "github.com/wailsapp/wails/v2/pkg/runtime" // a.ctx: context.Context runtime.EventsOn(a.ctx, "testevent", func(msg ...interface{}) { fmt.Println(msg) })
以上。