中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Flutter路由框架Fluro怎么用

發布時間:2021-09-23 13:41:19 來源:億速云 閱讀:147 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關Flutter路由框架Fluro怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

在Flutter應用開發過程中,除了使用Flutter官方提供的路由外,還可以使用一些第三方路由框架來實現頁面管理和導航,如Fluro、Frouter等。

Fluro作為一款優秀的Flutter企業級路由框架,Fluro的使用比官方提供的路由框架要復雜一些,但是卻非常適合中大型項目。因為它具有層次分明、條理化、方便擴展和便于整體管理路由等優點。

使用Fluro之前需要先在pubspec.yaml文件中添加Fluro依賴,如下所示。

dependencies: fluro: "^1.5.1"

如果無法使用上面的方式添加Fluro依賴,還可以使用git的方式添加Fluro依賴,如下所示。

dependencies: fluro:  git: git://github.com/theyakka/fluro.git

成功添加Fluro庫依賴后,就可以使用Fluro進行應用的路由管理與導航開發了。為了方便對路由進行統一的管理,首先需要新建一個路由映射文件,用來對每個路由進行管理。如下所示,是路由配置文件route_handles.dart的示例代碼。

import 'package:fluro/fluro.dart';import 'package:flutter/material.dart';import 'package:flutter_demo/page_a.dart';import 'package:flutter_demo/page_b.dart';import 'package:flutter_demo/page_empty.dart';//空頁面var emptyHandler = new Handler(  handlerFunc: (BuildContext context, Map<String, List<String>> params) {   return PageEmpty();  });//A頁面var aHandler = new Handler(  handlerFunc: (BuildContext context, Map<String, List<Object>> params) {   return PageA();  });//B頁面var bHandler = new Handler(  handlerFunc: (BuildContext context, Map<String, List<Object>> params) {   return PageB();  });

完成基本的路由配置后,還需要一個靜態的路由總體配置文件,方便我們在路由頁面中使用。如下所示,是路由總體配置文件routes.dart的示例代碼。

import 'package:fluro/fluro.dart';import 'package:flutter_demo/route_handles.dart';class Routes { static String page_a = "/";          //需要注意 static String page_b = "/b"; static void configureRoutes(Router router) {  router.define(page_a, handler: aHandler);  router.define(page_b, handler: bHandler);  router.notFoundHandler =emptyHandler;   //空頁面 }}

在進行路由的總體配置時,還需要處理不存在的路徑情況,即使用空頁面或者默認頁面進行代替。同時,需要注意的是應用的首頁一定要用“/”進行配置。為了方便使用,還需要把Router進行靜態化,這樣在任何一個頁面都可以直接調用它。如下所示,是application.dart文件的示例代碼。

import 'package:fluro/fluro.dart';class Application{ static Router router;}

完成上述操作后,就可以在main.dart文件中引入路由配置文件和靜態化文件了,如下所示。

import 'package:fluro/fluro.dart';import 'package:flutter_demo/routes.dart';import 'application.dart';void main() { Router router = Router(); Routes.configureRoutes(router); Application.router = router; runApp(MyApp());}class MyApp extends StatelessWidget { @override Widget build(BuildContext context) {  return MaterialApp(   title: 'Demo App',   onGenerateRoute: Application.router.generator,  ); }}

如果要在跳轉到某個頁面,只需要使用Application.router.navigateTo()方法即可,如下所示。

Application.router.navigateTo(context,"/b"); //b為配置路由

可以發現,Fluro雖然使用上相比Flutter的Navigator要繁瑣,但是對于中大型項目卻非常適合,它的分層架構也非常方便項目后期的升級和維護,

感謝各位的閱讀!關于“Flutter路由框架Fluro怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

壶关县| 平湖市| 安西县| 海兴县| 古田县| 北京市| 延川县| 罗定市| 调兵山市| 盐边县| 青州市| 河东区| 莒南县| 静乐县| 保靖县| 普宁市| 沙田区| 新疆| 剑河县| 天祝| 谢通门县| 泰顺县| 奉贤区| 福清市| 巴东县| 会同县| 濮阳县| 白山市| 龙井市| 万源市| 樟树市| 平山县| 贺兰县| 沙坪坝区| 河南省| 永靖县| 南郑县| 丰城市| 科技| 峡江县| 水富县|