javascript - Implementera Angular dragbar och släppbar, hur kan jag släppa en DIV på en plats och den stannar där
Jag använder https://mattlewis92.github.io/angular-draggable-droppable/demo/
Jag kan dra mina Divs som ses på bilden nedan, det jag vill är att om jag drar DIV 3 på DIV 1 så ska DIV 3 sätta sig på sin plats och de andra DIVarna ska glida ner.
Min dragdrop.component.ts-kod:
import { Component, OnInit, NgModule } from '@angular/core';
import {DragAndDropModule} from 'angular-draggable-droppable';
@Component({
selector: 'app-dragdrop',
templateUrl: './dragdrop.component.html',
styleUrls: ['./dragdrop.component.css']
})
export class DragdropComponent implements OnInit {
droppedData: string;
constructor() { }
ngOnInit() {
}
dragEnd(event) {
console.log('Element was dragged', event);
}
}
och min dragdrop.component.html-kod:
<br><br>
<div mwlDraggable (dragEnd)="dragEnd($event)">Drag DIV 1</div>
<br><br>
<div mwlDraggable (dragEnd)="dragEnd($event)">Drag DIV 2</div>
<br><br>
<div mwlDraggable (dragEnd)="dragEnd($event)">Drag DIV 3</div>
<div
(drop)="this.droppedData = $event.dropData">
<span [hidden]="!droppedData">Item dropped here with data: "{{ droppedData }}"!</span>
</div>
Svar #1
Vänligen titta på detta exempel https://stackblitz.com/edit/angular-draggable-droppable-example1
Svar #2
Jag rekommenderar dig att använda ett mycket praktiskt plugin till Angular Material som heter cdk för att implementera en drag & drop-applikation.
https://material.angular.io/cdk/drag-drop/overview
Hoppas det här hjälper.
