草庐IT

Ex-Navigator

全部标签

flutter - 为什么在 flutter 中调用 Navigator.of(context).pushNamed(..) 时会构建两次小部件?

下面类TestWidget中的build函数在执行导航代码时被调用两次。TestWidget在控制台上打印了两次。有谁知道为什么会这样?classTestWidgetextendsStatelessWidget{@overrideWidgetbuild(BuildContextcontext){print("TestWidget");returnnewScaffold(body:newText("TESTWIDGET"),);}}导航代码:Navigator.of(context).pushNamed(AppRoutes.fieldData);`路线定义:AppRoutes.field

Flutter navigator.push() 对象问题

当使用Navigator.push()将一个对象从一个类传递到另一个类时,即使该对象声明为非最终对象,也不会对其进行修改。主屏幕:创建一个对象(userBean)并传递给第一个屏幕第一个屏幕:显示相同的对象(userBean)值,并将相同的对象(userBean)再次传递到第二个屏幕。第二屏:尝试在第二屏修改相同的对象(userBean),并使用refreshData.then方法在第一屏打印相同的对象(userBean)。Main.dartimport'package:flutter/material.dart';import'package:flutter_app_poc1/fir

android - Flutter - Navigator 的 'parent != ' null' is not true' 错误

我写了一些检查,然后如果条件为真则导航到下一页。但是,只要该条件返回true并且我打算导航,我就会不断收到错误消息classBuyTicketsextendsStatefulWidget{@override_BuyTicketsStatecreateState()=>new_BuyTicketsState();}class_BuyTicketsStateextendsState{@overridevoidinitState(){...if(condition){//SkiptonextpageNavigator.push(context,MaterialPageRoute(builde

flutter - 每次推送使用不同的动画时如何正确执行 Navigator.popUntil

我正在尝试在Flutter中重建iOS应用程序,但遇到导航问题。这是我想做的:带有添加按钮的已添加交易对列表(A屏幕)“添加”按钮会打开PickerwithExchanges(B屏幕),并从底部过渡到顶部。通过点击交换,它会推送新的PickerwithPairs(C屏幕)从右到左过渡。当用户点击配对时,它会立即关闭所有选择器并将选择结果传送到A屏幕。我尝试了双弹出和弹出,但结果总是一样,我同时看到2个向后转换(从左到右和从上到下)。它在iOS原生应用中的样子:它在Flutter应用中的样子:用嵌套导航器解决用Navigator包裹屏幕B并使用此导航器推送屏幕C,在屏幕C上使用根导航器弹

dart - 使用 Navigator.pushNamed 导航时如何发送参数

我需要将一些参数发送到命名路由。我想做类似的事情:Navigator.pushNamed('/route/1');或者Navigator.pushNamed('/route?param1=1');我不知道是否有办法做到这一点,我正在使用带有路由器的MaterialApp。 最佳答案 第一种方式是我在我的应用程序中使用的方式。Navigator.pushNamed('/route/1');不要忘记使用onGenerateRoute并传递值。我的应用程序示例:routes:{'/':(BuildContextcontext)=>Auth

redux - Flutter Redux Navigator GlobalKey.currentState 返回 null

我正在使用Redux开发Flutter。当用户启动一个应用程序时,我希望Redux自动调度一个action。此操作将使Navigator依赖地推送不同的路由。这段代码providedbyaFlutterdevmember使用GlobalKey来使用middleware中的Navigator。在此之后,我将我的代码组织如下:ma​​in.dartvoidmain(){finalstore=newStore(appStateReducer,middleware:createRouteMiddleware());runApp(newMyApp(store));}classMyAppexten

android - Flutter Navigator Pop 不起作用

我昨天发现了flutter并尝试了一些,但我有一个问题。我按照教程实现了一个抽屉导航(thisone),抽屉打开得很好,所有按钮都改变了它们应该改变的东西,但调用了Navigator.pop(context)或Navigator.of(context).pop()(两者)的行为如下:在点击“角色”之前点击“角色”后我在网上搜索过,但找不到有同样问题的人:/这是我的代码:主Dart:import'package:flutter/material.dart';import'package:dnd/home.dart';voidmain()=>runApp(newMyApp());class

c# - "throw"和 "throw ex"之间有区别吗?

有些帖子询问这两者之间的区别。(为什么我要提这个...)但我的问题在某种程度上有所不同,我在另一个错误神级处理方法中调用了“throwex”。publicclassProgram{publicstaticvoidMain(string[]args){try{//something}catch(Exceptionex){HandleException(ex);}}privatestaticvoidHandleException(Exceptionex){if(exisThreadAbortException){//ignorethen,return;}if(exisArgumentOut

c - OpenSSL 函数 EVP_EncryptFinal_ex 中的内存泄漏

我根据教程实现了加密过程:http://www.openssl.org/docs/crypto/EVP_EncryptInit.html#当我通过valgring运行它并得到以下报告时:==2371==176bytesin1blocksarestillreachableinlossrecord3of6==2371==at0x4C2B6CD:malloc(in/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)==2371==by0x56CA133:CRYPTO_malloc(in/lib/x86_64-linux-gnu/libcry

linux - bash 中使用的 -ex 选项是什么 | #!/bin/bash -ex 意思

我们使用下面的脚本作为EC2实例的用户数据。我不明白-ex选项的用途是什么?#!/bin/bash-exyumupdate-yyumgroupinstall-y"WebServer""MySQLDatabase""PHPSupport"servicehttpdstartchkconfighttpdon 最佳答案 根据Addtackexonyourbashshebang|#!/bin/bash-exBashscriptscanusevariousoptionsontheshebang(#!/bin/bash).Amorecommono