Ограничение перетаскивания элемента Angular cdkDropListHtml

Программисты Html
Ответить Пред. темаСлед. тема
Anonymous
 Ограничение перетаскивания элемента Angular cdkDropList

Сообщение Anonymous »

В настоящее время я использую Angular 2 и модуль перетаскивания из https://material.angular.io/cdk/drag-drop/overview. Я заставил работать функции перетаскивания. У меня есть два разных типа объектов классов, которые я хочу ограничить их собственными типами списков перетаскивания.

Вероятно, эту проблему можно решить с помощью группировки списков, но поскольку я использую рекурсию, возникли другие проблемы...

В настоящее время все списки находятся внутри одной группы, а это означает, что в каждом списке можно перетаскивать что угодно ( cdkDropListGroup расположен в компоненте. до выполнения рекурсивной части).

Я пытаюсь сделать списки ограниченными только для приема либо элемента, либо атрибута (но не обоих), но я понятия не имею, как как это сделать...

У меня есть следующее:

Классы:

Код: Выделить всё

export class Attribute {
name: string;
type: string;

}

export class Element {
id: number;
name: string;
elements: Element[]
attributes: Attribute[];

}
HTML:

Код: Выделить всё

Elements


[img]assets/img/IconPlus.png[/img]










[img]assets/img/IconPlusPurple.png[/img]











< /code>

< /p>

ts. Метод вызывается (атрибут выглядит одинаково) < /p>

isElement(drag : CdkDrag){
console.log("check " + (drag instanceof Element) +  typeof drag + " , "+ typeof drag.data + ", "+ drag.data + " , " +(drag.data instanceof Element));
return (drag.data instanceof Element);
}
из вывода я просто получаю: «проверить ложный объект, неопределенный, неопределенный, ложный»
Из этого я попытался сравнить перетаскиваемый объект с классом .. но мне не повезло.

Есть ли способ динамически ограничить перетаскиваемый объект определенными списками? Я знаю о [cdkDropListConnectedTo], но это вызвало у меня проблемы с происходящей рекурсией и привязками. Любые рекомендации будут оценены

РЕДАКТИРОВАТЬ:
Добавлено изображение для представления того, как оно отображается, но не работает должным образом;
Изображение


Подробнее здесь: https://stackoverflow.com/questions/534 ... estriction
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Html»