欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何使用路由框架Fluro-創(chuàng)新互聯(lián)

小編給大家分享一下如何使用路由框架Fluro,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到豐臺(tái)網(wǎng)站設(shè)計(jì)與豐臺(tái)網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類(lèi)型包括:成都做網(wǎng)站、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋豐臺(tái)地區(qū)。

在Flutter應(yīng)用開(kāi)發(fā)過(guò)程中,除了使用Flutter官方提供的路由外,還可以使用一些第三方路由框架來(lái)實(shí)現(xiàn)頁(yè)面管理和導(dǎo)航,如Fluro、Frouter等。

Fluro作為一款優(yōu)秀的Flutter企業(yè)級(jí)路由框架,F(xiàn)luro的使用比官方提供的路由框架要復(fù)雜一些,但是卻非常適合中大型項(xiàng)目。因?yàn)樗哂袑哟畏置?、條理化、方便擴(kuò)展和便于整體管理路由等優(yōu)點(diǎn)。

那我們?cè)趺词褂眠@個(gè)優(yōu)秀的 框架呢?跟我來(lái)

還有BATJ、字節(jié)跳動(dòng)面試專題,算法專題,高端技術(shù)專題,混合開(kāi)發(fā)專題,java面試專題,Android,Java小知識(shí),到性能優(yōu)化.線程.View.OpenCV.NDK等已經(jīng)上傳到了的我的GitHub

我的GitHub學(xué)習(xí)地址: https://github.com/Meng997998/AndroidJX點(diǎn)下star一起學(xué)習(xí)

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

dependencies: fluro: "^1.5.1"

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

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

成功添加Fluro庫(kù)依賴后,就可以使用Fluro進(jìn)行應(yīng)用的路由管理與導(dǎo)航開(kāi)發(fā)了。為了方便對(duì)路由進(jìn)行統(tǒng)一的管理,首先需要新建一個(gè)路由映射文件,用來(lái)對(duì)每個(gè)路由進(jìn)行管理。如下所示,是路由配置文件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';//空頁(yè)面var emptyHandler = new Handler(
    handlerFunc: (BuildContext context, Map<String, List<String>> params) {      return PageEmpty();
    });//A頁(yè)面var aHandler = new Handler(
    handlerFunc: (BuildContext context, Map<String, List<Object>> params) {      return PageA();
    });//B頁(yè)面var bHandler = new Handler(
    handlerFunc: (BuildContext context, Map<String, List<Object>> params) {      return PageB();
    });

完成基本的路由配置后,還需要一個(gè)靜態(tài)的路由總體配置文件,方便我們?cè)诼酚身?yè)面中使用。如下所示,是路由總體配置文件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;     //空頁(yè)面
  }
}

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

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

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

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,
    );
  }
}

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

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

運(yùn)行上面的示例代碼,效果如下圖所示。

如何使用路由框架Fluro

可以發(fā)現(xiàn),F(xiàn)luro雖然使用上相比Flutter的Navigator要繁瑣,但是對(duì)于中大型項(xiàng)目卻非常適合,它的分層架構(gòu)也非常方便項(xiàng)目后期的升級(jí)和維護(hù),使用時(shí)可以根據(jù)實(shí)際情況進(jìn)行合理的選擇。

以上是“如何使用路由框架Fluro”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!

網(wǎng)頁(yè)名稱:如何使用路由框架Fluro-創(chuàng)新互聯(lián)
鏈接分享:http://chinadenli.net/article32/ghjsc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、定制網(wǎng)站、微信公眾號(hào)外貿(mào)建站、面包屑導(dǎo)航、云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司