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