Angularjs Material - Синхронизация нескольких блоков выбора - PullRequest
0 голосов
/ 23 сентября 2018

У меня есть базовая форма HTML, где пользователи могут переключаться между языками (французский, английский и двуязычный).В форме у меня есть поле выбора для каждого языка, и варианты одинаковы, но переведены в соответствии с выбранным языком.

Мне нужно синхронизировать их все, чтобы, когда пользователь выбирает вариант 1, в любом окне, все остальные блоки были в варианте 1.

  $scope.French_Options = ["Un", "Deux", "Trois"];
  $scope.Bilingual_Options = ["Un/One", "Deux/Two", "Trois/Three"];
  $scope.English_Options = ["One", "Two", "Three"];

<md-input-container>
    <label>French</label>
    <md-select ng-model="selection.french" ng-change="baseValueChange()" >
        <md-option ng-repeat="option in French_Options" ng-value="option "> {{état_fr}} </md-option>
    </md-select>
</md-input-container>                              

<md-input-container>
    <label>Bilingual/ Status</label>
    <md-select ng-model="selection.bilingual" ng-change="Notifications.('Bilingue', $index)" >
        <md-option ng-repeat="option in Bilingual_Options" ng-value="option "> {{état_bilingue}} </md-option>
    </md-select>
</md-input-container>                                                                         

<md-input-container style="margin-top: 5px; margin-bottom: 5px;" flex="25">
    <label>English</label>
    <md-select ng-model="selection.english" ng-change="baseValueChange()>
        <md-option ng-repeat="option in English_options" ng-value="option "> {{état_en}} </md-option>
    </md-select>
</md-input-container>   

Кто-нибудь может представить, какчтобы сделать это?

1 Ответ

0 голосов
/ 23 сентября 2018

Вы можете передать дополнительные аргументы в обратных вызовах ng-change, чтобы помочь автоматически установить другие варианты выбора.

Основная идея здесь будет заключаться в следующем:

  • Недавновыбранный параметр
  • Набор параметров, к которому он принадлежит
  • Позиция выбранного параметра в коллекции, к которой он принадлежит

Затем, как только вы получите эту позицию, выиспользовать его для обновления всех других вариантов выбора, чтобы выбранные параметры использовали параметр в той же позиции.

Вот краткая демонстрация того, как этого можно достичь.

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