Угловое перетаскивание с помощью формы Array - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть 2 массива.Я реализую перетаскивание Angular и хочу использовать FormArray для сохранения массива, в который был вставлен элемент.

Проблема в том, что я не могу применить formcontrol к элементу div, так как он выдает ошибку

Ошибка: отсутствует средство доступа к значению для элемента управления формы с именем: 'language'

Вот HTML

      <div>

        <div class="example-container">
          <h2>Selected Languages</h2>
          <div
          cdkDropList
          #todoList="cdkDropList"
          [cdkDropListData]="anotherarray"
          [cdkDropListConnectedTo]="[doneList]"
          class="example-list"
          (cdkDropListDropped)="drop($event)"
           formControlName="language">
          <div class="list-group-item list-group-item-action " *ngFor="let item of anotherarray" cdkDrag>
            {{item}}
          </div>
        </div>
      </div>

      <div class="example-container">
        <h2>Available Languages</h2>

        <div
        cdkDropList
        #doneList="cdkDropList"
        [cdkDropListData]="testingarray"
        [cdkDropListConnectedTo]="[todoList]"
        class="example-list"
        (cdkDropListDropped)="drop($event)">
        <div class="list-group-item list-group-item-action " *ngFor="let item of testingarray" cdkDrag>{{item}}</div>
      </div>
      </div>

      </div>

      <button type="submit" class="btn btn-primary my-2" translate>saveButtonLabel
        <fa-icon *ngIf="saveIcon" [icon]="saveIcon" [spin]="saveIcon.iconName === 'spinner'"></fa-icon>
      </button>
    </form>

1 Ответ

0 голосов
/ 21 февраля 2019

В настоящее время мы не можем использовать formControl с Angular Drag and Drop, так как он работает с div, и мы не можем добавить к нему formContol.Поэтому нам нужно использовать событие cdkDropListDropped, чтобы обновлять нашу модель вручную каждый раз, когда элемент был отброшен.

...