VWidgetGuard class
VGuard is a VRouteElement which is used to control navigation changes
Use beforeLeave or beforeUpdate to get navigation changes before they take place. These methods will give you a VRedirector that you can use to:
- know about the navigation changes VRedirector.previousVRouterData and VRedirector.newVRouterData
- redirect using VRedirector.to or stop the navigation using VRedirector.stopRedirection
Use afterEnter or afterUpdate to get notification changes after they happened. At this point you can use VRouter.of(context) to get any information about the new route
See also VGuard for a VRouteElement which control navigation changes
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- VWidgetGuard
Constructors
-
VWidgetGuard({Key? key, void afterEnter(BuildContext context, String? from, String to) = VoidVGuard.voidAfterEnter, void afterUpdate(BuildContext context, String? from, String to) = VoidVGuard.voidAfterUpdate, Future<
void> beforeUpdate(VRedirector vRedirector) = VoidVGuard.voidBeforeUpdate, Future<void> beforeLeave(VRedirector? vRedirector, void saveHistoryState(Map<String, String> state)) = VoidVGuard.voidBeforeLeave, Future<void> onPop(VRedirector vRedirector) = VoidVPopHandler.voidOnPop, Future<void> onSystemPop(VRedirector vRedirector) = VoidVPopHandler.voidOnSystemPop, required Widget child}) -
const
Properties
- afterEnter → void Function(BuildContext context, String? from, String to)
-
Called when the url changes and this VWidgetGuard was NOT part
of the previous route.
final
- afterUpdate → void Function(BuildContext context, String? from, String to)
-
Called when the url changes and this VWidgetGuard was already part
of the previous route.
final
-
beforeLeave
→ Future<
void> Function(VRedirector? vRedirector, void saveHistoryState(Map<String, String> state)) -
Called when the route changes and the VRouteElement
associated to this VWidgetGuard is in the previous route
but not in the new one
final
-
beforeUpdate
→ Future<
void> Function(VRedirector vRedirector) -
This is called before the url is updated, if this VRouteElement is in the previous route
AND in the new route
final
- child → Widget
-
The child of this widget
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
-
onPop
→ Future<
void> Function(VRedirector vRedirector) -
Called when a pop event occurs.
A pop event can be called programmatically (with VRouter.of(context).pop())
or by other widgets such as the appBar back button
final
-
onSystemPop
→ Future<
void> Function(VRedirector vRedirector) -
Called when a system pop event occurs.
This happens on android when the system back button is pressed
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → _VWidgetGuardState -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of
DiagnosticsNode
objects describing this node's children.inherited -
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited