`RouteAware`-实现者取消订阅任何先前的依赖吗?

时间:2019-06-12 08:00:48

标签: flutter flutter-dependencies

以下代码摘自RouteObserver的Flutter文档:

   @override
   void didChangeDependencies() {
     super.didChangeDependencies();
     routeObserver.subscribe(this, ModalRoute.of(context));
   }

   @override
   void dispose() {
     routeObserver.unsubscribe(this);
     super.dispose();
   }

我不明白为什么didChangeDependencies也不包括routeObserver.unsubscribe(this)

RouteAware-实现者是否应该取消订阅任何先前的依赖关系?

1 个答案:

答案 0 :(得分:1)

这是安全的,因为如果subscribe已在订户列表中,则this的实现将不执行任何操作。