Javascript-форум (https://javascript.ru/forum/)
-   Angular.js (https://javascript.ru/forum/angular/)
-   -   angular 2 ngModel (https://javascript.ru/forum/angular/70183-angular-2-ngmodel.html)

shoopik 17.08.2017 18:43

angular 2 ngModel
 
Привет, в общем хочу сделать следующее, есть 2 группы баттонов(angular material "md-radio-button"), если какое-то из значений первой группы совпадает с любым из второй, сделать баттон неактивным и добавить какой-то текст.
К примеру в 1 группе есть :
-Москва
-СПБ
-Воронеж
Во второй есть:
-Краснодар
-Чебаркуль
-Воронеж
Тогда в 1 группе сделать баттон Воронеж неактивным и добавить текст.
Здесь код (перезалил):
https://plnkr.co/edit/3QdQtu4kWCQjL5uO2kJt?p=preview

Мои мысли ведут меня в сторону - [disabled] = "selectedcountry === selectedcopycountry", такой же *ngIf c текстом к баттону, но ведь тогда считаются значения только с выбранного ... В общем прошу помощи :)

destus 17.08.2017 20:14

shoopik,
Так просто проверяешь для каждого значения из первой группы на Array.includes для copyCountries и делаешь disabled.

destus 18.08.2017 07:07

shoopik,
https://plnkr.co/edit/FK3PUz9bLALduQyedEur?p=preview

shoopik 19.08.2017 16:57

Цитата:

Сообщение от destus (Сообщение 461941)

спасибо, не совсем понял, в функции
return this.copycountries.map(el => el.name)

map(el => el.name) - просто берет элемент country.name ?

destus 19.08.2017 19:08

shoopik,
Из массива обьектов делаем массив с названием стран.


Часовой пояс GMT +3, время: 14:47.