Angular 2 - Select2 Set Default Value не работает - PullRequest
0 голосов
/ 31 октября 2018

Я использую угловое выпадающее меню 2 select2, ниже HTML:

<select2 [data]="countries" [value]="countrySelected" (valueChanged)="onSelectCountry($event)"></select2>
<select2 [data]="regions" [value]="regionSelected" (valueChanged)="onSelectRegion($event)"></select2>
<select2 [data]="cities" [value]="citySelected" (valueChanged)="onSelectCity($event)"></select2>

Я пытаюсь заполнить данные и установить значение по умолчанию. Сначала я получаю данные по странам и устанавливаю значение по умолчанию:

ngOnInit() {
                this.userService.profile().subscribe(data=>{
                        this.user = data;
                        this.locationService.getCountrys('all').subscribe(data => {
                                this.countries = data;
                                this.countrySelected = this.user.location.country.id;
                        });
                });
        }

И это вызывает событие onSelectCountry:

onSelectCountry($value){
                this.locationService.getRegions($value.value).subscribe(data => {
                        this.regions = data;
                        this.regionSelected = this.user.location.region.id;
                });
        }

Затем я получаю регионы на основе страны и устанавливаю значение по умолчанию для города, которое затем вызывает onSelectRegion:

onSelectRegion($value){
                this.locationService.getCities($value.value).subscribe(data => {
                        this.cities = data;
                        this.citySelected = this.user.location.city.id;
                });
        }

Получает города на основе региона и устанавливает значение по умолчанию для региона

Моя проблема в том, что значение по умолчанию вообще не устанавливается, данные заполняются, но они переходят к первому значению. Что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...