Comments (9)
@tomgilder Sure would provide a code sample
from routemaster.
oh okk gotcha. would try that @tomgilder thanks for the instant help. Was using this in production level app.
from routemaster.
@AbhishekDoshi-Bacancy glad it's fixed!
Instead of passing data between pages, that data should be in some global state management. If the user navigates to the second URL directly your app will have to fetch the data from API.
This has also been brought up in another issue: #96
Closing this for now, but feel free to make any suggestions about passing data.
from routemaster.
Hi, what platform is this on please? There are issues with replace()
on the web currently - users can sometimes go back to the page - but the navigation should work
from routemaster.
And any code sample would be useful
from routemaster.
main.dart
import 'package:flutter/material.dart';
import 'package:knuggies/screens/home.dart';
import 'package:knuggies/screens/login.dart';
import 'package:knuggies/screens/splash.dart';
import 'package:knuggies/utils/string_constants.dart';
import 'package:routemaster/routemaster.dart';
import 'package:url_strategy/url_strategy.dart';
void main() {
setPathUrlStrategy();
runApp(MyApp());
}
class MyApp extends StatelessWidget {
final _routerDelegate = RouteMap(
routes: {
'/': (_) => MaterialPage(child: SplashScreen()),
'/home': (_) => MaterialPage(child: HomeScreen()),
'/login': (_) => MaterialPage(child: LoginScreen()),
},
);
@override
Widget build(BuildContext context) {
return MaterialApp.router(
debugShowCheckedModeBanner: false,
themeMode: ThemeMode.dark,
theme: ThemeData.dark(),
title: StringConstants.appName,
routerDelegate: RoutemasterDelegate(routesBuilder: (context) => _routerDelegate),
routeInformationParser: RoutemasterParser(),
);
}
}
splash.dart
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:knuggies/utils/string_constants.dart';
import 'package:routemaster/routemaster.dart';
class SplashScreen extends StatefulWidget {
@override
_SplashScreenState createState() => _SplashScreenState();
}
class _SplashScreenState extends State<SplashScreen> {
@override
void initState() {
Timer(
Duration(seconds: 2),
() => Routemaster.of(context).replace('home'),
);
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: Image.network(
StringConstants.splashLogoURL,
height: MediaQuery.of(context).size.width / 10.0,
),
),
);
}
}
from routemaster.
@tomgilder if i use push instead of replace, it works perfectly
from routemaster.
You need to replace remove the dependency on url_strategy
and change setPathUrlStrategy();
to Routemaster.setPathUrlStrategy();
I'll try to make Routemaster compatible with url_strategy
or at least add something to the documentation.
from routemaster.
Hey thanks! This works perfectly. I had one more question, it might be off from the issue topic.
How can I pass data from one screen to another screen if I am using push()
without showing it into URL.
Eg: I have made an API call in 1st page and now I wish to move that entire object to 2nd page.
It will be great if you can provide some reference example or docs for this scenario.
@tomgilder
from routemaster.
Related Issues (20)
- There is no way to preserve the page state in the Indexed Page and PageStackNavigator. HOT 1
- Support RouteConfig for convenient initialize.
- Is there any possibility to have route for pop-up? HOT 2
- Nested Routes With Parameters on IndexedPage
- tutorials on how to use routemaster?
- When opening URL directly takes users to /
- There is no way to set up nested tab navigation for navbars other than cupterino tab bar HOT 1
- There is no wait for a route to get over and execute something after that
- onUnknownRoute callback is not invoked correctly
- Inconsistent Redirect() behavior in Indexed Pages navigation
- How to swap routing map and then immediately switch to a specific route in the map HOT 1
- Analytics implementation update / additional docs request. HOT 1
- How to work with WillPopScope or disable back press from android device. HOT 3
- Is path restoration when switching tabs intentional when setting IndexedPage.of(context).index?
- Using history.back() but the widget state is recreated.
- Navigation falls back to homepage when 1) i change locale, 2) change screen size
- Back button always pops app HOT 1
- how to clear all routes in routemaster?
- Question: New stack in new window
- queryParameters are not available in child page of the IndexedPage.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from routemaster.