Mam aplikację Angular 2, która ma do czynienia z klientami i zapleczem wiosennym. Obiekt klienta ma typ klienta, który jest również obiektem, i rozwijam formularz klienta działający tak, że obiekty są przechowywane jako wartość, jednak nie mogę wymyślić, jak wybrać właściwy typ klienta, gdy istniejący klient jest ładowany do formularza.Wybrana opcja Angular2 z obiektami
<select class="form-control" required [(ngModel)]="customer.customerType" >
<option *ngFor="let ct of customerTypes" [ngValue]="ct">{{ct.customerType}}</option>
</select>
W powyższym urywku, jeśli klient ma już typ klienta, menu nie wybierze żadnej wartości. Pamiętam ten sam problem z angular1 który został rozwiązany za pomocą ngOptions:
<select ng-model="customer.customerType"
ng-options="customerType.customerType for customerType in customerTypes
track by customerType.customerType" >
</select>
Więc moje pytanie brzmi, jak powtórzyć drogę Angular1 rozwiązać ten problem w Kątowymi 2
Po prostu przypisanie wartości domyślnej do 'customer.customerType' powinno zrobić to, co chcesz. 'ngValue' i' customer.customerType' muszą wskazywać na to samo wystąpienie obiektu, nie tylko na dwa obiekty o tej samej treści. –
Uświadomiłem sobie, że potrzebuje tej samej instancji obiektu, a nie obiektów o tej samej treści, ale zastanawiałem się, czy istnieje sposób, że można wybrać coś podobnego do komparatora w języku Java, że użyje aby ocenić, czy instancje obiektów są takie same. W końcu zamieniłem instancję zwróconą w zaproszeniu na odpoczynek, z odpowiednikiem obiektu z wybranych opcji, który wydaje się naprawdę niezgrabny. – Drew
Możliwy duplikat [Wiążącego elementu zaznaczonego do obiektu w Angular 2] (https://stackoverflow.com/questions/35945001/binding-select-element-to-object-in-angular-2) –