usePeriodicalSignal function
int
usePeriodicalSignal(
{ - required Duration period,
- bool enabled = true,
})
Implementation
int usePeriodicalSignal({required Duration period, bool enabled = true}) {
return useDebugGroup(
debugLabel: "usePeriodicalSignal()",
debugFillProperties: (properties) => properties
..add(DiagnosticsProperty("period", period))
..add(FlagProperty("enabled", value: enabled, ifFalse: "disabled")),
() {
final state = useState(0);
final isMounted = useIsMounted();
useEffect(() {
if (enabled) {
final timer = Timer.periodic(period, (_) {
if (isMounted()) state.value++;
});
return timer.cancel;
}
return null;
}, [enabled]);
return state.value;
},
);
}