Skip to main content

Observable

Mixin: notifies when fields change; auto-wraps lists/dicts to be observable.

Example
import flet as ft
from dataclasses import dataclass


@ft.observable
@dataclass
class MyDataClass:
x: int
y: int


obj = MyDataClass(1, 2)


def listener(sender, field):
print(f"Changed: {field} in {sender}")


obj.subscribe(listener)
obj.x = 3
obj.y = 4

Methods

  • notify - Manually notify listeners that something changed.
  • subscribe - Register a change listener.

Methods

notify

notify()

Manually notify listeners that something changed.

subscribe

subscribe(fn: Listener)

Register a change listener.

Parameters:

  • fn (Listener) - Listener callback receiving (sender, field).

Returns:

  • Callable[[], None] - A disposer function that unsubscribes the listener.