メインコンテンツにスキップ
バージョン: 次期バージョン 🚧

イベント

Wailsでは、GoまたはJavaScriptによって発行および受信できる、一元化されたイベントシステムが用意されています。 必要に応じて、イベント発行時にデータを渡すことも可能です。 イベントリスナーは、そのデータをローカルデータ型で受け取ります。

EventsOn

このメソッドは、指定されたイベント名のイベントリスナーを新たに設定します。 eventNameという名前のイベントが発行されると、コールバックがトリガーされます。 イベント発行時にデータも付与されていた場合、そのデータはコールバックに渡されます。 このメソッドは、リスナーをキャンセルするための関数を返します。

Go: EventsOn(ctx context.Context, eventName string, callback func(optionalData ...interface{})) func()
JS: EventsOn(eventName string, callback function(optionalData?: any)): () => void

EventsOff

このメソッドは、指定されたイベント名のイベントリスナー設定を解除します。引数のadditionalEventNamesを使用することで、複数のリスナーを一度に解除できます。

Go: EventsOff(ctx context.Context, eventName string, additionalEventNames ...string)
JS: EventsOff(eventName string, ...additionalEventNames)

EventsOnce

このメソッドは、指定されたイベント名のイベントリスナーを新たに設定し、一度だけトリガーさせます。 このメソッドは、リスナーをキャンセルするための関数を返します。

Go: EventsOnce(ctx context.Context, eventName string, callback func(optionalData ...interface{})) func()
JS: EventsOnce(eventName string, callback function(optionalData?: any)): () => void

EventsOnMultiple

このメソッドは、指定されたイベント名のイベントリスナーを新たに設定し、最大counter回だけトリガーします。 このメソッドは、リスナーをキャンセルするための関数を返します。

Go: EventsOnMultiple(ctx context.Context, eventName string, callback func(optionalData ...interface{}), counter int) func()
JS: EventsOnMultiple(eventName string, callback function(optionalData?: any), counter int): () => void

EventsEmit

このメソッドは、指定されたイベントを発行します。 必要に応じて、イベント発行時にデータを渡すこともできます。 このメソッドによって、任意のイベントリスナーをトリガーさせることができます。

Go: EventsEmit(ctx context.Context, eventName string, optionalData ...interface{})
JS: EventsEmit(eventName: string, ...optionalData: any)