安全刷新
FutureOr<void> safeSetState(FutureOr<dynamic> Function() fn) async { await fn(); if (mounted && !context.debugDoingBuild && context.owner?.debugBuilding == false) { setState(() {}); } }