ChangeNotifierScopedQueryBase<Result, TRef extends Ref> class
abstract
Base class that can specify the type of the provider part of ScopedQuery.
Used to create frameworks.
ChangeNotifierScopedQueryのprovider部分の型を指定することができるベースクラス。
フレームワークの作成に利用します。
ChangeNotifierScopedQuery makes it possible to define values globally and manage states individually and safely.
Only ChangeNotifier can be managed as a value. It is possible to monitor the status and send change notifications to the widget.
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 queryName.
If autoDisposeWhenUnreferenced is set to true
, ScopedQuery will be automatically disposed of when it is no longer referenced by any widget.
ChangeNotifierScopedQueryを利用してグローバルに値を定義して個別に安全に状態を管理することが可能になります。
ChangeNotifierのみを値として管理できます。状態を監視し、変更通知をウィジェットに送信することが可能です。
providerに管理したい値を返すコールバックを指定してください。
通常はhashCodeを用いて状態の名前を管理しますが、特別に名前を指定したい場合はqueryNameを指定してください。
autoDisposeWhenUnreferencedをtrue
にすると、ScopedQueryがどのウィジェットからも参照されなくなった時に自動的に破棄されます。
final valueNotifierQuery = ChangeNotifierScopedQuery(
() => ValueNotifier(0),
);
class TestPage extends PageScopedWidget {
@override
Widget build(BuildContext context, PageRef ref) {
final valueNotifier = ref.page.query(valueNotifierQuery);
return Scaffold(
body: Center(child: Text("${valueNotifier.value}")),
);
}
}
- Inheritance
-
- Object
- ScopedQueryBase<
Result, TRef> - ChangeNotifierScopedQueryBase
- Annotations
Constructors
-
ChangeNotifierScopedQueryBase(Result provider(QueryScopedValueRef<
TRef> ref), {Object? name, bool autoDisposeWhenUnreferenced = false}) -
Base class that can specify the type of the
provider
part of ScopedQuery.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 setteroverride -
provider
→ Result Function(QueryScopedValueRef<
TRef> 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< TRef> ref) → Result Function() -
Returns a callback that returns the value you want to manage.
override
-
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