У меня есть компонент с выпадающим меню выбора материала, и когда [(выделение)] имеет тип SingleSelectionModel, я получил ошибку "angular dart Ожидается значение типа" SingleSelectionModel ", но получен один из типа" Term "". Когда это типа Термин, это нормально.
Мне нужен SingleSelectionModel для доступа к его потоку изменений и выполнения некоторых операций с выбранным значением.
У меня есть Dart 2.2.0, угловой: ^ 5.2.0, angular_components: ^ 0.11.0.
Может кто-нибудь помочь, как использовать SingleSelectionModel для [(выбор)]?
@Component(
selector: 'x-plan-edit-rule',
template: '''
<material-dropdown-select
[options]="terms"
[(selection)]="selectedTerm"
[buttonText]="buttonText">
</material-dropdown-select>
''',
directives: const [
coreDirectives,
MaterialButtonComponent,
MaterialDropdownSelectComponent,
],
)
class EditPlanRuleComponent implements OnInit {
@Input() Rule rule;
SelectionOptions<Term> terms;
SingleSelectionModel<Term> selectedTerm = SelectionModel<Term>.single(); // GIVES ERROR
//Term selectedTerm; // WORKS FINE WITHOUT ERROR
EditPlanRuleComponent();
@override
ngOnInit() {
// List<Term> rule.availableTerms
terms = SelectionOptions.fromList(rule.availableTerms);
selectedTerm?.selectionChanges?.listen((_) {
// do some checks after the selection change
});
}
String get buttonText => 'Some button text';
}