我有一个资产文件需要先处理才能使用。该资产文件将被大量编辑,我希望每次进行编辑时都不必重新启动应用程序。
我知道该类reassemble
上存在该方法State
。但是,这需要有一个虚拟小部件来覆盖此方法并将其放在应用程序中的某个位置以获取有关热重载的通知。
class WdHotReloadNotifier extends StatefulWidget
{
final Function callback;
WdHotReloadNotifier(this.callback);
@override
State<StatefulWidget> createState() => WdHotReloadNotifierState(this.callback);
}
class WdHotReloadNotifierState extends State<WdHotReloadNotifier>
{
Function callback;
WdHotReloadNotifierState(this.callback);
@override
void reassemble()
{
super.reassemble();
callback();
}
@override
Widget build(BuildContext context) {
return Container();
}
}
然后我可以像这样使用它:
WdHotReloadNotifier((){print("HOT REALOADED 1");}),
WdHotReloadNotifier((){print("HOT REALOADED 2");}),
但是,将这些添加到单个页面意味着只要页面在堆栈中,它就可以工作。并且将它们添加到多个页面意味着挂钩将执行多次。
有没有办法在全球范围内获得有关热重载的通知?