【发布时间】:2022-01-22 01:05:58
【问题描述】:
我想知道是否可以观察 initState 中的值变化,然后简单地调用一个函数?
考虑到我正在使用 Provider 观察的类的状态,我基本上需要启动和停止计时器(听:真),并且希望有一些回调功能可以触发,而不是每次都调用 build()?
例如类似..
void initState() {
super.initState();
Provider.of<MyService>(context, listen: true).serviceRunning => {
//do stuff (start/stop my local timer)
if(serviceRunning) {
serviceRunning()
} else {
serviceStopped()
}
}
}
void serviceRunning() {
//start local timer and other bits
}
void serviceStopped() {
//stop local timer and other bits
}
Widget build(BuildContext context) {
..
}
我不记得 Provider 能够做到这一点,所以如果有任何关于如何实现这一点的建议,我将不胜感激。如上所述,我只是想避免不必要地调用 build()。
【问题讨论】:
标签: flutter dart flutter-provider