首页 > 解决方案 > 使用导航中的道具调用 API

问题描述

我想根据通过导航发送的值调用我的内容管理系统的 API,如下所示:

final Map option = ModalRoute.of(context).settings.arguments;

如果我尝试访问其中的导航参数,initState()则会抛出

[ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: dependOnInheritedWidgetOfExactType<_ModalScopeStatus>() or dependOnInheritedElement() was called before _SelfCareScreenState.initState() completed.

如果我在其中访问它,didChangeDependencies()它会起作用,但会调用 API 两次。option有没有一种方法可以让我使用from nav 参数调用我的 api而无需调用两次?

标签: flutterdart

解决方案


如果您的目标是发送某种分析(或类似的东西),您应该查看RouterObserverRouteAware类。取决于您的需要,也许您应该尝试使用带有扩展路线信息的NavigatorObserver 。


推荐阅读