UiStatefulComponent<TProps extends UiProps, TState extends UiState> class
abstract
The basis for a stateful over_react component.
Includes support for strongly-typed UiState in-addition-to the strongly-typed props and utilities for prop and CSS classname forwarding provided by UiComponent.
Initializing state:
@Component()
class YourComponent extends UiStatefulComponent<YourProps, YourState> {
Map getInitialState() => (newState()
..aStateKeyWithinYourStateClass = /* default value */
);
@override
render() {
var classes = forwardingClassNameBuilder()
..add('your-component-base-class')
..add('a-conditional-class', state.aStateKeyWithinYourStateClass);
return (SomeChildComponent()
..addProps(copyUnconsumedProps())
..className = classes.toClassName()
)(props.children);
}
}
Deprecated. Use UiStatefulComponent2
instead. Will be removed in the 4.0.0
release.
- Inheritance
-
- Object
- Component
- UiComponent<
TProps> - UiStatefulComponent
- Implementers
- Annotations
-
- @Deprecated('4.0.0')
Constructors
Properties
-
childContextKeys
→ Iterable<
String> -
The keys this component uses in its child context map (returned by
getChildContext
).no setterinherited -
consumedProps
→ Iterable<
ConsumedProps> ? -
The props for the non-forwarding props defined in this component.
no setterinherited
- context ↔ dynamic
-
The React context map of this component, passed down from its ancestors'
getChildContext
value.getter/setter pairinherited -
contextKeys
→ Iterable<
String> -
The keys of context used by this component.
no setterinherited
- displayName → String?
-
Allows the ReactJS
displayName
property to be set for debugging purposes.no setterinherited - hashCode → int
-
The hash code for this object.
no setterinherited
- jsThis → dynamic
-
The JavaScript
ReactComponent
instance of thisComponent
returned byrender
.no setterinherited - nextContext ↔ Map?
-
Private reference to the value of
context
for the upcoming render cycle.getter/setter pairinherited - nextProps ↔ Map?
-
Reference to the value of
props
for the upcoming render cycle.getter/setter pairinherited - nextState → Map
-
Public getter for
_nextState
.no setterinherited - prevContext ↔ Map?
-
Reference to the value of
context
from the previous render cycle, used internally for proxying the ReactJS lifecycle method.getter/setter pairinherited - prevState ↔ Map?
-
Reference to the value of
state
from the previous render cycle, used internally for proxying the ReactJS lifecycle method andcomponentDidUpdate
.getter/setter pairinherited - props ↔ TProps
-
A typed props object corresponding to the current untyped props Map (unwrappedProps).
getter/setter pairinherited
- ref ↔ RefMethod
-
DEPRECATED.
getter/setter pairinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- setStateCallbacks → List
-
The List of callbacks to be called after the component has been updated from a call to
setState
.no setterinherited - state ↔ TState
-
A typed state object corresponding to the current untyped state Map (unwrappedState).
getter/setter pairoverride
- transactionalSetStateCallbacks → List
-
The List of transactional
setState
callbacks to be called before the component updates.no setterinherited - unwrappedProps ↔ Map
-
The props Map that will be used to create the typed props object.
getter/setter pairinherited
- unwrappedState ↔ Map
-
The state Map that will be used to create the typed state object.
getter/setter pair
Methods
-
awaitBeforeDispose<
T> (Future< T> future) → Future<T> -
Add
future
to a list of futures that will be awaited before the object is disposed.inherited -
componentDidMount(
) → void -
ReactJS lifecycle method that is invoked once, only on the client (not on the server), immediately after the
initial rendering occurs.
inherited
-
componentDidUpdate(
Map prevProps, Map prevState) → void -
ReactJS lifecycle method that is invoked immediately after the
Component
's updates are flushed to the DOM.inherited -
componentWillMount(
) → void -
ReactJS lifecycle method that is invoked once, both on the client and server, immediately before the initial
rendering occurs.
inherited
-
componentWillReceiveProps(
Map nextProps) → void -
ReactJS lifecycle method that is invoked when a
Component
is receivingnewProps
.inherited -
componentWillReceivePropsWithContext(
Map newProps, dynamic nextContext) → void -
UNSUPPORTED IN COMPONENT2
This API was never stable in any version of ReactJS, and was replaced with a new, incompatible context API in ReactJS 16.
This will be completely removed alongside the Component class.
inherited -
componentWillUnmount(
) → void -
ReactJS lifecycle method that is invoked immediately before a
Component
is unmounted from the DOM.inherited -
componentWillUpdate(
Map nextProps, Map nextState) → void -
ReactJS lifecycle method that is invoked immediately before rendering when
nextProps
ornextState
are being received.inherited -
componentWillUpdateWithContext(
Map nextProps, Map nextState, Map? nextContext) → void -
DEPRECATED - DO NOT USE
This API was never stable in any version of ReactJS, and was replaced with a new, incompatible context API in ReactJS 16.
This will be completely removed alongside the Component class.
inherited -
copyProps(
{bool omitReservedReactProps = true, bool onlyCopyDomProps = false, Iterable? keysToOmit, Iterable< Iterable> ? keySetsToOmit}) → Map -
Returns a copy of this component's props with React props optionally omitted, and
with the specified
keysToOmit
andkeySetsToOmit
omitted.inherited -
copyUnconsumedDomProps(
) → Map -
Returns a copy of this component's props with keys found in consumedProps and non-DOM props omitted.
inherited
-
copyUnconsumedProps(
) → Map -
Returns a copy of this component's props with keys found in consumedProps omitted.
inherited
-
forwardingClassNameBuilder(
) → ClassNameBuilder -
Returns a new ClassNameBuilder with className and blacklist values added from CssClassPropsMixin.className and
CssClassPropsMixin.classNameBlacklist, if they are specified.
inherited
-
getChildContext(
) → Map< String, dynamic> -
Returns a Map of context to be passed to descendant components.
inherited
-
getDefaultProps(
) → Map -
Invoked once and cached when
registerComponent
is called. Values in the mapping will be set onprops
if that prop is not specified by the parent component.inherited -
getInitialState(
) → Map -
Invoked once before the
Component
is mounted. The return value will be used as the initial value ofstate
.inherited -
getManagedDelayedFuture<
T> (Duration duration, T callback()) → Future< T> -
Creates a Future that will complete, with the value
returned by
callback
, after the given amount of time has elapsed.inherited -
getManagedDisposer(
Disposer disposer) → ManagedDisposer -
Automatically handle arbitrary disposals using a callback.
inherited
-
getManagedPeriodicTimer(
Duration duration, void callback(Timer timer)) → Timer -
Creates a periodic Timer that will be cancelled if active
upon disposal.
inherited
-
getManagedTimer(
Duration duration, void callback()) → Timer -
Creates a Timer instance that will be cancelled if active
upon disposal.
inherited
-
initComponentInternal(
Map props, void _jsRedraw(), [RefMethod? ref, dynamic _jsThis, Map? context]) → dynamic -
inherited
-
initStateInternal(
) → dynamic -
inherited
-
listenToStream<
T> (Stream< T> stream, void onData(T event), {Function? onError, void onDone()?, bool? cancelOnError}) → StreamSubscription<T> -
Returns a StreamSubscription which handles events from the stream using
the provided
onData
,onError
andonDone
handlers.inherited -
manageAndReturnDisposable(
Disposable disposable) → Disposable -
inherited
-
manageAndReturnTypedDisposable<
T extends Disposable> (T disposable) → T -
Automatically dispose another object when this object is disposed.
inherited
-
manageCompleter<
T> (Completer< T> completer) → Completer<T> -
Ensure that a completer is completed when the object is disposed.
inherited
-
manageDisposable(
Disposable disposable) → void -
inherited
-
manageDisposer(
Disposer disposer) → void -
DEPRECATED. Use
getManagedDisposer
instead.inherited -
manageStreamController(
StreamController controller) → void -
Automatically cancel a stream controller when this object is disposed.
inherited
-
manageStreamSubscription(
StreamSubscription subscription) → void -
DEPRECATED. Use
listenToStream
instead.inherited -
newProps(
) → TProps -
Returns a typed props object backed by a new Map.
inherited
-
newState(
) → TState - Returns a typed state object backed by a new Map.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
redraw(
[dynamic callback()?]) → void -
Force a call to
render
by callingsetState
, which effectively "redraws" theComponent
.inherited -
render(
) → dynamic -
Required.
inherited
-
replaceState(
Map? newState, [dynamic callback()?]) → void -
Set
_nextState
to providednewState
value and force a re-render.inherited -
setState(
covariant dynamic newState, [dynamic callback()?]) → void -
Triggers a rerender with new state obtained by shallow-merging
newState
into the currentstate
.inherited -
shouldComponentUpdate(
Map nextProps, Map nextState) → bool -
ReactJS lifecycle method that is invoked before rendering when
nextProps
ornextState
are being received.inherited -
shouldComponentUpdateWithContext(
Map nextProps, Map nextState, Map? nextContext) → bool? -
DEPRECATED - DO NOT USE
This API was never stable in any version of ReactJS, and was replaced with a new, incompatible context API in ReactJS 16.
This will be completely removed alongside the Component class.
inherited -
toString(
) → String -
A string representation of this object.
inherited
-
transferComponentState(
) → void -
Transfers
Component
_nextState
tostate
, andstate
toprevState
.inherited -
typedPropsFactory(
Map propsMap) → TProps -
Returns a typed props object backed by the specified
propsMap
.inherited -
typedStateFactory(
Map stateMap) → TState -
Returns a typed state object backed by the specified
stateMap
. -
validateProps(
Map appliedProps) → void -
Throws a PropError if
appliedProps
are invalid.inherited -
validateRequiredProps(
Map appliedProps) → void -
Validates that props with the
@requiredProp
annotation are present.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited