を示していますNG2-dragulaを使用して、私はリストのグリッドを持っており、お互いにグリッドのタイルをドラッグして、交換しようとしていますドラッグするNG2-dragulaを使用してスワップグリッドは
some.component.html
<md-grid-list rowHeight="200px" id = "cover" >
<md-grid-tile *ngFor="let werbedata of werbedaten"
[class.selected]="werbedata === selectedWerbedata"
[routerLink]="['/flyerdetail',werbedata.artnr]"
[style.background]="'lightblue'" class = "blocks"
[dragula]='"bag-one"'>
<md-list class="example-card">
<md-list-item>Produktname: {{ werbedata.werbetext }}</md-list-item>
<md-list-item>Euro: {{ werbedata.euro }}</md-list-item>
<h3 md-line> Artnr: {{ werbedata.artnr }} </h3>
<p md-line> Werbetext: {{ werbedata.werbetext }} </p>
</md-list>
</md-grid-tile>
</md-grid-list>
some.component.ts
export class FlyerComponent implements OnInit {
werbedaten: WerbeData[];
selectedWerbedata: WerbeData;
constructor(private werbedatenService: WerbeDatenService){};
...
...
}
は、私の考えではDropイベントにデータを交換することでした。このようなHTMLに追加できるonDropイベントはありますか?
(onDrop) = "swap(data)"
コンポーネントクラスでswap(data:any)
を実行しますか?
または、私はdragulaserviceを初期化する必要がありますか?代わりにスワップするより良い方法はありますか?
私はまったく新しい角度にあります。どのようなヒントをいただければ幸いですか?
返信いただきありがとうございます。私はすでにDragulaの設定と基本的なドラッグドロップを作成しています。それはとても簡単でした。ドロップコンストラクタをありがとうが、私はすでに同じコンストラクタで両方を初期化することはできませんので、別のサービスを初期化するために私のコンストラクタを使用している。 – Mellkor
コンストラクタで必要なだけ多くのサービスを初期化できます。これは1つに限定されません –