怎麼使用路由框架Fluro?Flutter的這個框架太優秀了!
在Flutter應用開發過程中,除了使用Flutter官方提供的路由外,還可以使用一些第三方路由框架來實現頁面管理和導航,如Fluro、Frouter等。
Fluro作為一款優秀的Flutter企業級路由框架,Fluro的使用比官方提供的路由框架要複雜一些,但是卻非常適合中大型專案。因為它具有層次分明、條理化、方便擴充套件和便於整體管理路由等優點。
那我們怎麼使用這個優秀的 框架呢?跟我來
還有BATJ、位元組跳動面試專題,演算法專題,高階技術專題,混合開發專題,java面試專題,Android,Java小知識,到效能最佳化.執行緒.View.OpenCV.NDK等已經上傳到了的我的GitHub
使用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正在被越來越多的開發者和組織使用,Flutter完全免費、開源,作為Google如今的親兒子,值得學習!
如果你不想落後,我可以分享我學習Flutter的 影片
這套 影片包含入門到實戰,非常實用,有各大網際網路公司最愛的Flutter混合開發,企業專案必不可少的整合Native SDK的講解,以及從小白成長為大牛必經之路Flutter外掛的開發,還有更高深的Flutter專案最佳化內容的講解等等。
現在免費分享給大家一起來,可以評論區留言,也可以私聊我
不要猶豫,關注我,一起來走進Flutter的世界吧!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952849/viewspace-2673863/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Flutter路由框架Fluro簡介Flutter路由框架
- Flutter | 日誌還能這麼列印,太秀了!Flutter
- Flutter - 路由管理 - 02 - FluroFlutter路由
- 對Flutter路由管理庫Fluro的封裝Flutter路由封裝
- Flutter從0開發一個路由框架Flutter路由框架
- android 優秀框架整理Android框架
- Flutter路由專案實戰之fluroFlutter路由
- 在Flutter中使用Fluro外掛進行路由跳轉Flutter路由
- 優秀PHP優秀框架Laravel和Yii的詳解PHP框架Laravel
- MyBatis--優秀的持久層框架MyBatis框架
- Ocelot一個優秀的.NET API閘道器框架API框架
- AndroidRouter路由框架使用Android路由框架
- Flutter路由輕量級框架FRouterFlutter路由框架
- 曾經優秀的人,怎麼就突然不優秀了。
- gin框架post路由的使用框架路由
- 這個框架停止維護了嗎?框架
- 10 個 Flutter 優秀元件Flutter元件
- 你不可不知道的20個優秀PHP框架PHP框架
- 一個優秀的Android開源框架學習專案ForgetSkyWanAndroidAndroid框架NaN
- vue移動端優秀框架收集Vue框架
- 國內優秀MES開源框架框架
- .net core下優秀的日誌框架使用解析,附原始碼框架原始碼
- 一個優秀的可定製化Flutter相簿元件,看這一篇就夠了Flutter元件
- Flutter框架分析(四)-- Flutter框架的執行Flutter框架
- .net 下優秀的DI框架推薦,看看你用過幾個?框架
- caffe整體框架的學習的部落格,這個部落格山寨了一個caffe框架框架
- 一個Android路由框架的誕生之路Android路由框架
- Flutter框架渲染流程與使用Flutter框架
- .net中優秀依賴注入框架Autofac看一篇就夠了依賴注入框架
- 高效能優秀的服務框架-dubbo介紹框架
- go的web框架gin的使用(七):多路由GoWeb框架路由
- 為什麼 Laravel 這麼優秀Laravel
- 使用Laravel框架,怎麼通過訪問/xxxx/ooo.php也通過路由來使用Laravel框架PHP路由
- Django框架,Flask框架和Tornado框架各有什麼優缺點Django框架Flask
- Flutter 比 React Native 更優秀的五個理由FlutterReact Native
- ui餓了麼框架UI框架
- 不知道大家對《測試框架》這個詞是怎麼理解的呢框架
- 不會這3個ChartBuilder使用技巧,怎麼開發優秀的數字孿生視覺化專案?UI視覺化