首页 > 解决方案 > Flutter Navigator 从 Navigator.pop 获取错误值

问题描述

我在颤振中使用导航器,我有一个带有以下代码的屏幕:

    tempResultHolder = await Navigator.of(context, rootNavigator: true).push(
      MenuOverlay(
          studentTest: widget.studentTest,
          context: context,
          currentQuestionIndex: currentQuestion - 1,
          currentSectionIndex: currentSection),
    );
    debugPrint('String got from menu: $tempResultHolder');


menuOverlay 的弹出代码是:

          onTap() {
             debugPrint('Sending from menu: $outerIndex,${innerIndex + 1}');
             Navigator.pop(context, '$outerIndex,$innerIndex');
          }


控制台输出为:

从菜单发送:2,4
从菜单获得的字符串:2,3
请告诉我,如果我能做些什么来获得正确的数据。如果外部索引是奇数,我在内部索引中再获得 1:对于奇数索引:
从菜单发送:1,4
从菜单获得的字符串:1,4

标签: flutterdartmobile-application

解决方案


我找到了解决方案。我在导航到覆盖屏幕的主屏幕上的 onTap() 上使用异步。我删除了它,一切正常。


推荐阅读