BiliRouteDelegate 类里的一个方法看不明白

来源:3-13 本章作业

慕后端6449339

2022-11-10

老师,同学,下面这个方法的格式不明白,哪位可帮助解答下🍺
BiliRouteDelegate() : navigatorKey = GlobalKey() 这一段是构造方法么,做初始化变量用的?

BiliRouteDelegate() : navigatorKey = GlobalKey() {
这里面怎么又可以加一些初始化内容?有点蒙圈
}

///相关代码
BiliRouteDelegate() : navigatorKey = GlobalKey() {
//实现路由跳转逻辑
HiNavigator.getInstance().registerRouteJump(
RouteJumpListener(onJumpTo: (RouteStatus routeStatus, {Map? args}) {
_routeStatus = routeStatus;
if (routeStatus == RouteStatus.detail) {
this.videoModel = args![‘videoMo’];
}
notifyListeners();
}));
//设置网络错误拦截器
HiNet.getInstance().setErrorInterceptor((error) {
if (error is NeedLogin) {
//清空失效的登录令牌
HiCache.getInstance().remove(LoginDao.BOARDING_PASS);
//拉起登录
HiNavigator.getInstance().onJumpTo(RouteStatus.login);
}
});
}

写回答

1回答

CrazyCodeBoy

2022-11-11

这是dart构造方法的一种写法,也叫初始化列表,构造函数后的冒号后面的内容就是初始化列表。
不同的初始化实例变量之间使用逗号隔开;
构造函数被调用时,先按顺序执行初始化列表内容,然后再执行“{}”内的内容。
0
1
慕后端6449339
了解了,老师 多谢,悟性不行啊。。
2022-11-11
共1条回复

Flutter高级进阶实战-仿哔哩哔哩-掌握Flutter高阶技能

一次性掌握Flutter高阶技能+商业级复杂项目架构设计与开发方案

1723 学习 · 870 问题

查看课程