イベント
Wailsでは、GoまたはJavascriptによって発行および受信できる、一元化されたイベントシステムが用意されています。 必要に応じて、イベント発行時にデータを渡すことも可能です。 イベントリスナーは、そのデータをローカルデータ型で受け取ります。
EventsOn
このメソッドは、指定されたイベント名のイベントリスナーを新たに設定します。 eventName
という名前のイベントが発行されると、コールバックがトリガーされます。 イベント発行時にデータも付与されていた場合、そのデータはコールバックに渡されます。
Go: EventsOn(ctx context.Context, eventName string, callback func(optionalData ...interface{}))
JS: EventsOn(eventName string, callback function(optionalData?: any))
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{}))
JS: EventsOnce(eventName string, callback function(optionalData?: any))
EventsOnMultiple
このメソッドは、指定されたイベント名のイベントリスナーを新たに設定し、最大counter
回だけトリガーします。
Go: EventsOnMultiple(ctx context.Context, eventName string, callback func(optionalData ...interface{}), counter int)
JS: EventsOnMultiple(eventName string, callback function(optionalData?: any), counter int)
EventsEmit
このメソッドは、指定されたイベントを発行します。 必要に応じて、イベント発行時にデータを渡すこともできます。 このメソッドによって、任意のイベントリスナーをトリガーさせることができます。
Go: EventsEmit(ctx context.Context, eventName string, optionalData ...interface{})
JS: EventsEmit(ctx context, optionalData function(optionalData?: any))