-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[go _route] fragment parameter added #8232
Conversation
hashes to URLs, whichcould lead to potential bugs. This update introduces a dedicated fragment parameter, allowing for more seamless and reliable URL navigation.
to remove the Linux repo_checks error.
@chunhtai @hannah-hyj Can you please tell me what improvements I should make? |
return _configuration.namedLocation(name, | ||
pathParameters: pathParameters, queryParameters: queryParameters); | ||
pathParameters: pathParameters, queryParameters: queryParameters) + | ||
((fragment?.isNotEmpty ?? false) ? '#$fragment' : ''); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we should add fragment to namedLocation api as well
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry for overlooking that part . Added the the fragment handling to the namedLocation api.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This doesn't seem addressed yet
namedLocation api final location = context.namedLocation( 'details', fragment: 'section3', ); context.go(location);
This fix ensures that the fragment is properly included when generating the URI using namedLocation in router.dart.
- Added logic to redirect to '/route/1' if the fragment is '1' in the '/route' route. - Updated test to verify correct redirection and ensure no infinite redirects occur. - Ensured proper navigation based on fragment values using router.goNamed(). - Added assertions to check for expected behavior and prevent exceptions during navigation.
@chunhtai Could you please tell me what needs to be fixed? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Modified `namedLocation` method to pass `fragment` directly to `_configuration.namedLocation`. - Simplifies handling of the fragment by removing manual concatenation logic.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@@ -1146,3 +1150,4 @@ | |||
## 0.1.0 | |||
|
|||
- squatting on the package name (I'm not too proud to admit it) | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
additional line?
@@ -7,6 +11,7 @@ | |||
- Updates minimum supported SDK version to Flutter 3.22/Dart 3.4. | |||
- Updates readme. | |||
|
|||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
additional line?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@hannah-hyj I think there are still some minor formatting issue of changelog |
flutter/packages@3d3ab7b...258f6dc 2025-01-24 [email protected] [shared_preferences] Add shared preferences devtool (flutter/packages#8494) 2025-01-24 [email protected] [shared_preferences] update List<String> encode/decode (flutter/packages#8335) 2025-01-24 [email protected] Manual roll Flutter from c1561a4 to c1ffaa9 (21 revisions) (flutter/packages#8498) 2025-01-24 [email protected] [ios_platform_images] Switch to `loadImage` (flutter/packages#8216) 2025-01-24 [email protected] [camera] Remove OCMock from CameraExposureTests and CameraFocusTests (flutter/packages#8351) 2025-01-24 [email protected] [shared_preferences] Tool for migrating from legacy shared_preferences to shared_preferences_async (flutter/packages#8229) 2025-01-23 [email protected] Revert "[shared_preferences] Add shared preferences devtool" (flutter/packages#8493) 2025-01-23 [email protected] [go_router] Fix return type of current state getter to be non-nullable (flutter/packages#8173) 2025-01-23 [email protected] Manual roll Flutter from b2f515f to c1561a4 (18 revisions) (flutter/packages#8491) 2025-01-23 [email protected] [pigeon] fixes event channel dart instance name usage and adds test (flutter/packages#8483) 2025-01-23 [email protected] [go _route] fragment parameter added (flutter/packages#8232) 2025-01-23 [email protected] [in_app_purchase] Update in_app_purchase_android version in in_app_purchase (flutter/packages#8463) 2025-01-23 [email protected] [image_picker] Reference alternate macOS implementations (flutter/packages#8487) 2025-01-23 [email protected] [rfw] Activate leak testing (flutter/packages#8370) 2025-01-23 [email protected] [video_player] Activate leak testing (flutter/packages#8379) 2025-01-23 [email protected] Manual roll Flutter from b9e86a5 to b2f515f (42 revisions) (flutter/packages#8482) 2025-01-23 [email protected] [camera] Add API support query for image streaming (app-facing) (flutter/packages#8422) 2025-01-23 [email protected] Manual roll Flutter from b9e86a5 to eb6af3d (13 revisions) (flutter/packages#8473) 2025-01-23 [email protected] [shared_preferences] Add shared preferences devtool (flutter/packages#8322) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages-flutter-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Description of Change
This PR addresses the need for fragments/hashes to be treated as first-party parameters within the
go_router
package, as highlighted in issue #150155. Previously, users had to manually append the fragment to the URL, which could lead to potential bugs. With this update, thefragment
is now a dedicated parameter, allowing for a more seamless and bug-free integration.Before:
After:
Issues Fixed
This PR resolves issue #150155.
Pre-launch Checklist
dart format
.)[shared_preferences]
pubspec.yaml
with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.CHANGELOG.md
to add a description of the change, following repository CHANGELOG style, or this PR is exempt from CHANGELOG changes.///
).If you need help, consider asking for advice on the #hackers-new channel on Discord.