Observer class

Observer observes the observables used in the builder function and rebuilds the Widget whenever any of them change. There is no need to do any other wiring besides simply referencing the required observables.

Internally, Observer uses a Reaction around the builder function. If your builder function does not contain any observables, Observer will print a warning on the console. This is a debug-time hint to let you know that you are not observing any observables.

Inheritance

Constructors

Observer({@required WidgetBuilder builder, Key key, ReactiveContext context, dynamic name })
Returns a widget that rebuilds every time an observable referenced in the builder function is altered. [...]

Properties

builder WidgetBuilder
The function that generates the Widget as part of the Observer. This method is wrapped in a reaction for tracking and automatically discovering the used Observables. When the Observables change, this builder method is invoked again.
final
context ReactiveContext
The context within which its reaction should be run. It is the mainContext in most cases
final
name ↔ String
An identifiable name used for debugging
read / write
hashCode → int
The hash code for this object.
read-only, inherited
key Key
Controls how one widget replaces another widget in the tree. [...]
final, inherited
runtimeType → Type
A representation of the runtime type of the object.
read-only, inherited

Methods

createReaction(dynamic onInvalidate(), { dynamic onError(Object, Reaction) }) Reaction
A convenience method used for testing.
@visibleForTesting
createState() State<Observer>
Creates the mutable state for this widget at a given location in the tree. [...]
override
log(String msg) → void
Convenience method to output console messages as debugging output. Logging usually happens when some internal error needs to be surfaced to the user.
createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree. [...]
inherited
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children. [...]
@protected, inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent 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.debug }) → String
Returns 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 ==(dynamic other) → bool
The equality operator.
inherited