アイテムをドラッグしてメインコンテンツに追加できるエディターを実装しようとしています。問題は、ソースアイテムコンテナーからドラッグすると、ソースアイテムが常に破棄されることです。
アイテムをドラッグアンドドロップできる間、ソースアイテムを強制的に元の場所に保持する方法はありますか?基本的に、私は移動動作ではなく、そのコピー動作が必要です。
基本的に達成したいことに対応する他の質問はすでに見ましたが、この動作をどのように実装するかを知りたいのに、アイテムをコピーするために技術的に行う方法に関する質問であったため、どれも実際には役に立ちませんでしたUIで、アイテムが消えたかどうかを確認するのは非常に混乱します。
交換
drop(event: CdkDragDrop<string[]>) {
if (event.previousContainer === event.container) {
moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);
} else {
transferArrayItem(
event.previousContainer.data,
event.container.data,
event.previousIndex,
event.currentIndex
);
}
}
with
drop(event: any) {
if (event.previousContainer === event.container) {
moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);
} else {
copyArrayItem(
event.previousContainer.data,
event.container.data,
event.previousIndex,
event.currentIndex
);
}
}