select method
对target
进行单选操作, 如果T
不为Selectable则什么都不做, 直接透传
根据isRadio
判断是否是单选, 默认单选
Implementation
List<T>? select(T? target, {bool isRadio = true}) {
if (_subject.isClosed) {
L.w('IO在close状态下请求发送数据');
return null;
}
assert(latest is List<Selectable>);
return forEach((T data) {
if (data is Selectable) {
if (isRadio) {
data.isSelected = (data == target);
} else {
if (data == target) data.isSelected = true;
}
}
});
}