r_router 0.2.1 copy "r_router: ^0.2.1" to clipboard
r_router: ^0.2.1 copied to clipboard

outdated

A Flutter router package,you can not need use context to navigate.

example/lib/main.dart

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:r_router/r_router.dart';
import 'package:r_router_example/src/page/404_page.dart';
import 'src/page/my_page.dart';
import 'src/page/page_one.dart';
import 'src/page/page_three.dart';
import 'src/page/page_two.dart';

void main() {
  initRouter();
  runApp(MyApp());
}

void initRouter() {
  // add new
  RRouter.myRouter.addRouter(
    path: '/one',
    routerWidgetBuilder: (params) => PageOne(),
  );
  RRouter.myRouter.addRouter(
    path: '/two',
    routerWidgetBuilder: (params) => PageTwo(
      param: params['param'],
    ),
  );
  RRouter.myRouter.addRouter(
    path: '/three',
    routerWidgetBuilder: (params) => PageThree(),
    routerPageBuilderType: RRouterPageBuilderType.cupertino,
  );

  RRouter.myRouter.addRouter(
    path: '/four',
    routerWidgetBuilder: (params) => PageThree(),
    routerPageTransitions: ZoomPageTransitionsBuilder(),
  );

  RRouter.myRouter.notFoundPage = (String path) => NoFoundPage(
        path: path,
      );

//  RRouter.myRouter.interceptor =
//      RRouterInterceptorWrapper(onRequest: (settings) {
//    if (settings.name == '/three') {
//      return settings.copyWith(name: '/two');
//    } else {
//      return settings;
//    }
//  });
  // add new
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      // add new
      onGenerateRoute: RRouter.myRouter.routerGenerate,
      navigatorObservers: [
        RRouter.myRouter.observer,
      ],
      // add new
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}
// use navigate
// RRouter.myRouter.navigateTo('/three', arguments: {'pageThree': 'hello world!'});
5
likes
0
points
71
downloads

Publisher

verified publisherrhyme95.cn

Weekly Downloads

A Flutter router package,you can not need use context to navigate.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter

More

Packages that depend on r_router