blog → Uncategorized → Jak komunikować się między widgetami? EventBus!
Jak komunikować się między widgetami? EventBus!
Autor: patryk

EventBus to narzędzie służące do przesyłania wiadomości (zdarzeń) pomiędzy różnymi elementami aplikacji w frameworku Flutter. Może być używane do przesyłania informacji pomiędzy różnymi widżetami w aplikacji, niezależnie od tego, czy są one bezpośrednio ze sobą zagnieżdżone, czy też są od siebie odizolowane. EventBus umożliwia również przesyłanie informacji pomiędzy różnymi warstwami aplikacji, takimi jak warstwa widoku i warstwa logiki biznesowej.

Aby skorzystać z EventBus w Flutter, należy najpierw zainstalować odpowiedni pakiet za pomocą polecenia pub add event_bus. Następnie należy utworzyć instancję EventBus i udostępnić ją w całej aplikacji. Wreszcie, aby przesłać wiadomość za pomocą EventBus, należy wywołać metodę fire(), a aby odebrać wiadomość, należy zarejestrować odpowiednią funkcję za pomocą metody on().

Przykład:

Copy codeimport 'package:event_bus/event_bus.dart';

// Tworzymy instancję EventBus
final eventBus = EventBus();

// Przesyłamy wiadomość za pomocą EventBus
eventBus.fire(MyEvent('hello'));

// Odbieramy wiadomość za pomocą EventBus
eventBus.on<MyEvent>().listen((event) {
  print(event.message);  // wyświetla "hello"
});

// Klasa reprezentująca wiadomość (zdarzenie)
class MyEvent {
  final String message;
  MyEvent(this.message);
}

EventBus jest szczególnie przydatny w przypadku aplikacji Flutter z dużą liczbą widżetów, które muszą współdziałać ze sobą i wymieniać informacje. Zamiast tworzyć skomplikowane struktury zagnieżdżenia widżetów lub tworzyć złożone interfejsy między

social media

Let's Be Friends