做网站组服务器,鹤岗网站seo,手机网站开发前台架构,上杭网站设计公司文章目录 1. 概念介绍2. 使用方法2.1 普通路由2.2 命名路由 3. 示例代码4. 内容总结 我们在上一章回中介绍了使用get显示Dialog相关的内容#xff0c;本章回中将介绍使用get进行路由管理.闲话休提#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍
我们在本章… 文章目录 1. 概念介绍2. 使用方法2.1 普通路由2.2 命名路由 3. 示例代码4. 内容总结 我们在上一章回中介绍了使用get显示Dialog相关的内容本章回中将介绍使用get进行路由管理.闲话休提让我们一起Talk Flutter吧。 1. 概念介绍
我们在本章回中介绍的路由管理主要是指页面之间的跳转该功能是Get包的主要功能之一不过原生SDK中也提供了该功能。我们在前面章回中介绍Get包时提到过路 由管理功能本章回中将详细介绍该功能的用法同时也会和原生SDK中的功能做比较。
2. 使用方法
我们在本章回中介绍的路由管理功能主要包含普通路由管理和命名路由管理两个功能。我们将分不同的小节来介绍它们。
2.1 普通路由
我们在这里说的普通路由是指在路由中直接使用页面类对象比如下面的代码中直接使用了YourPage这个对象它代表项目中的某个页面。 Get.to(const YourPage());Navigator.of(context).push(MaterialPageRoute(builder: (context) const YourPage()));原生SDK中通过Navigator类来实现路由管理该类提供了push,pop,push,pushReplacement等方法来实现路由跳转功能。Get包对此类进行了封装它提供了相 关的方法来实现路由跳转功能包中常用的方法如下
to():用来从当前页面跳转到参数是指定的页面与原生中的push方法功能相同back():用来从当前页面返回到上一级页面与原生中的pop方法功能相同off():用来从当前页面跳转到参数是指定的页面并且取消下一个页面的导航(返回箭头)与原生中的pushReplacement方法功能相同offAll():用来从当前页面跳转到参数指定的页面并且删除所的有路由与原生中的pushAndRemoveUntil方法功能相同 上面介绍的这些方法使用十分方便主要体现在两个方面通过包名就可以直接调用只需要在参数中传入跳转的页面就可以不需要BuildContext对象
2.2 命名路由
命名路由就是给页面起一个别名在页面跳转时通过别名来跳转到指定的页面。它的用法详细如下
给页面创建别名并且把别名赋值给GetMaterialApp组件的getPages属性在GetMaterialApp组件的initialRoute属性中指定根路由使用包中的toNamed方法跳转到指定页面该方法的的参数是页面的别名 掌握上面介绍的使用步骤就可以调用包中的方法来使用命名路由下面是包中提供的相关方法toNamed():用来从当前页面跳转到参数是指定的页面与原生中的push方法功能相同offNamed():用来从当前页面跳转到参数是指定的页面并且取消下一个页面的导航(返回箭头)与原生中的pushReplacement方法功能相同offAllNamed():用来从当前页面跳转到参数指定的页面并且删除所的有路由与原生中的pushAndRemoveUntil方法功能相同 上面介绍的这些方法使用十分方便主要体现在两个方面通过包名就可以直接调用只需要在参数中传入跳转的页面就可以不需要BuildContext对象此外包中 还提供了其它的命名路由方法大家可以去查看接口相关的代码。
3. 示例代码
GetMaterialApp(// home: GetHomePage(),///配置好路由后可以使用命名路由配置方法和Material方法相同initialRoute: /,getPages: [GetPage(name: /, page: () const GetHomePage(),),GetPage(name: /overlay, page: () const ExOverlayEntry(),),GetPage(name: /html, page: () const ExHtmlView(),),],
);ElevatedButton(onPressed: (){Get.toNamed(/html);// Navigator.of(context).pushNamed(/html);},child: const Text(Named),),上面的示例代码完全按照上一小节中的实现方法来编写同时把包中路由方法赋值给了按钮的onPressed属性这样在点击按钮时就可以跳转到其它的页面。这里只演示 了一种命名路由方法其它的方法用法相同大家可以自己动手去实践。
4. 内容总结
最后我们对本章回的内容做一个全面的总结
Get提供了两种方法管理路由普通路由和命名路由普通路由通过to,back,off()等方法来实现路由管理命名路由通过toNamed,offNamed(),offAllNamed()等方法来实现路由管理Get包中进行路由管理的方法都是静态方法并且不需要提供Context对象使用十分方便 看官们与使用get进行路由管理相关的内容就介绍到这里欢迎大家在评论区交流与讨论!