Dragula множественное перетаскивание - PullRequest
0 голосов
/ 14 октября 2019

Я пытался сделать контейнеры "зданиями", чтобы перемещать "партии" внутри, а контейнеры "партии" также содержали "этажи" внутри. Я должен иметь возможность перетаскивать «лоты» в «здания» и «полы» в «участки». Не должно быть возможности иметь «этажи» вне «лотов».

Вот мой массив:

this.buildings = [
            { id: 1, name: "building1", lots: [
                { id: 1, name: "lot1", building_id: 2, floors: [
                    { id: 1, name: "floor1", lot_id: 1 },
                    { id: 2, name: "floor2", lot_id: 1 },
                    { id: 3, name: "floor3", lot_id: 1 }] },
                { id: 2, name: "lot2", building_id: 1, floors: [
                    { id: 1, name: "floor1", lot_id: 2 },
                    { id: 2, name: "floor2", lot_id: 2 },
                    { id: 3, name: "floor3", lot_id: 2 }] }] },
            { id: 2, name: "building2", lots: [
                { id: 1, name: "lot1b", building_id: 2, floors: [
                    { id: 1, name: "floor1b", lot_id: 1 },
                    { id: 2, name: "floor2b", lot_id: 1 },
                    { id: 3, name: "floor3b", lot_id: 1 }] },
                { id: 2, name: "lot2b", building_id: 2, floors: [
                    { id: 1, name: "floor1b", lot_id: 2 },
                    { id: 2, name: "floor2b", lot_id: 2 },
                    { id: 3, name: "floor3b", lot_id: 2 }] }] }
        ]

А вот мой HTML:

<ion-card *ngFor="let building of buildings">
                <ion-card-title>
                    {{building.name}}
                </ion-card-title>
                <ion-card-content [dragula]='"bag-one"' [(dragulaModel)]="building.lots">
                    <ion-card *ngFor="let lot of building.lots">
                        <ion-card-title>
                            {{lot.name}}
                        </ion-card-title>
                        <ion-card-content [dragula]='"bag"' [(dragulaModel)]="lot.floors">
                            <ion-card *ngFor="let floor of lot.floors">
                                <ion-card-title>
                                    {{floor.name}}
                                </ion-card-title>
                            </ion-card>
                        </ion-card-content>
                    </ion-card>
                </ion-card-content>
            </ion-card>

С помощью этого кода можно перемещать «лоты» в «здания», но невозможно изменить порядок «этажей» внутри «лотов».

...