ScopedQuery<Result> class
ScopedQuery makes it possible to define values globally and manage state individually and safely.
Specify in provider a callback that returns the value you wish to manage.
Normally hashCode is used to manage state names, but if you want to specify a special name, specify name
.
If autoDisposeWhenUnreferenced is set to true
, ScopedQuery will be automatically disposed of when it is no longer referenced by any widget.
ScopedQueryを利用してグローバルに値を定義して個別に安全に状態を管理することが可能になります。
providerに管理したい値を返すコールバックを指定してください。
通常はhashCodeを用いて状態の名前を管理しますが、特別に名前を指定したい場合はname
を指定してください。
autoDisposeWhenUnreferencedをtrue
にすると、ScopedQueryがどのウィジェットからも参照されなくなった時に自動的に破棄されます。
final stateQuery = ScopedQuery(
() => "state",
);
class TestPage extends PageScopedWidget {
@override
Widget build(BuildContext context, PageRef ref) {
final state = ref.page.query(stateQuery);
return Scaffold(
body: Center(child: Text("${state}")), // `state`
);
}
}
- Inheritance
-
- Object
- ScopedQueryBase<
Result, Ref> - ScopedQuery
- Annotations
Constructors
-
ScopedQuery(Result provider(QueryScopedValueRef<
Ref> ref), {Object? name, bool autoDisposeWhenUnreferenced = false}) -
ScopedQuery makes it possible to define values globally and manage state individually and safely.
const
Properties
- autoDisposeWhenUnreferenced → bool
-
Returns
true
if ScopedQuery should be automatically discarded when it is no longer referenced by any widget.finalinherited - hashCode → int
-
The hash code for this object.
no setterinherited
- listen → bool
-
Returns
true
if the value is monitored for update notification.no setterinherited -
provider
→ Result Function(QueryScopedValueRef<
Ref> ref) -
A callback that returns the value you want to manage.
finalinherited
- queryName → Object
-
Returns a name to identify the state.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
call(
QueryScopedValueRef< Ref> ref) → Result Function() -
Returns a callback that returns the value you want to manage.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited