参数类型 'ModalRoute<Object?>?' 不能分配给参数类型“PageRoute<dynamic>”

BLB*_*BLB 3 flutter firebase-analytics

最近我正在迁移到空安全。更新了 firebase_analytics:^8.0.2。

现在面临 this.observer.subscribe(this, ModalRoute.of(context)); 的问题。有人可以帮助什么通过第二个参数。

class _BookedClassDetailsPageState extends 
State<BookedClassDetailsPage> with SingleTickerProviderStateMixin, RouteAware{

late FirebaseAnalyticsObserver observer;

@override
void initState() {
 super.initState();
 observer=widget.repository.analyticsService.getAnalyticsObserver();
 observer.analytics.setCurrentScreen(
     screenName: 'Booked Class Page',
     screenClassOverride: 'BookedClassPage'
 );

}

@override
void didChangeDependencies() {
  super.didChangeDependencies();
  observer.subscribe(this, ModalRoute.of(context));
}
 @override
 void dispose() {
    observer.unsubscribe(this);
    super.dispose();
 }
}
Run Code Online (Sandbox Code Playgroud)

小智 6

您可以通过关键字“as”将 ModalRoute 类型更改为 PageRoute,像这样?

observer.subscribe(this, ModalRoute.of(context) as PageRoute);
Run Code Online (Sandbox Code Playgroud)