Skip to content

Commit a95ceb1

Browse files
committed
Refactor hooks imports and usage in Flet
Moved hook functions (use_state, use_effect, etc.) to be imported directly from flet.components.hooks in flet/__init__.py, and removed their re-export from flet.hooks.__init__.py. Updated tic-tac-toe example to use hx.state instead of ft.use_state. This change clarifies the source of hooks and streamlines their usage.
1 parent 6d80daa commit a95ceb1

3 files changed

Lines changed: 12 additions & 20 deletions

File tree

sdk/python/examples/apps/declarative/tic-tac-toe.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import flet as ft
2+
import flet.hooks as hx
23

34

45
@ft.component
@@ -55,8 +56,8 @@ def handle_click(i: int):
5556

5657
@ft.component
5758
def Game():
58-
history, set_history = ft.use_state([[""] * 9])
59-
current_move, set_current_move = ft.use_state(0)
59+
history, set_history = hx.state([[""] * 9])
60+
current_move, set_current_move = hx.state(0)
6061
x_is_next = current_move % 2 == 0
6162

6263
def handle_play(next_squares: list[str]):

sdk/python/packages/flet/src/flet/__init__.py

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
from flet.app import app, app_async, run, run_async
22
from flet.components.component import Component
33
from flet.components.component_decorator import component
4+
from flet.components.hooks.use_callback import use_callback
5+
from flet.components.hooks.use_context import create_context, use_context
6+
from flet.components.hooks.use_effect import use_effect
7+
from flet.components.hooks.use_memo import use_memo
8+
from flet.components.hooks.use_state import use_state
49
from flet.components.memo import memo
510
from flet.components.observable import Observable, observable
611
from flet.controls import alignment, border, border_radius, margin, padding
@@ -499,14 +504,6 @@
499504
VisualDensity,
500505
WebRenderer,
501506
)
502-
from flet.hooks import (
503-
create_context,
504-
use_callback,
505-
use_context,
506-
use_effect,
507-
use_memo,
508-
use_state,
509-
)
510507
from flet.pubsub.pubsub_client import PubSubClient
511508
from flet.pubsub.pubsub_hub import PubSubHub
512509

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
1-
from flet.components.hooks.use_callback import callback, use_callback
2-
from flet.components.hooks.use_context import context, create_context, use_context
1+
from flet.components.hooks.use_callback import callback
2+
from flet.components.hooks.use_context import context, create_context
33
from flet.components.hooks.use_effect import (
44
effect,
55
mounted,
66
unmounted,
77
updated,
8-
use_effect,
98
)
10-
from flet.components.hooks.use_memo import memo, use_memo
11-
from flet.components.hooks.use_state import state, use_state
9+
from flet.components.hooks.use_memo import memo
10+
from flet.components.hooks.use_state import state
1211

1312
__all__ = [
1413
"callback",
@@ -20,9 +19,4 @@
2019
"state",
2120
"unmounted",
2221
"updated",
23-
"use_callback",
24-
"use_context",
25-
"use_effect",
26-
"use_memo",
27-
"use_state",
2822
]

0 commit comments

Comments
 (0)