LidSelector<S, T> constructor
const
LidSelector<S, T> ({
- Key? key,
- required StateNotifier<
S> stateNotifier, - required LidWidgetSelector<
S, T> selector, - required LidWidgetBuilder<
T> builder, - bool animate = false,
- AnimatedSwitcherTransitionBuilder transitionBuilder = AnimatedSwitcher.defaultTransitionBuilder,
- Duration duration = const Duration(milliseconds: 300),
LidSelector is analogous to LidBuilder but allows developers to filter updates by selecting a new value based on the state. Unnecessary builds are prevented if the selected value does not change.
Note: the selected value must be immutable in order for LidSelector to accurately determine whether builder should be called again.
LifSelector<State, SelectedState>(
selector: (state) {
// return selected state based on the provided state.
},
builder: (context, state) {
// return widget here based on the selected state.
},
)
Implementation
const LidSelector({
Key? key,
required this.stateNotifier,
required this.selector,
required this.builder,
this.animate = false,
this.transitionBuilder = AnimatedSwitcher.defaultTransitionBuilder,
this.duration = const Duration(milliseconds: 300),
}) : super(key: key);