在Angular 7中,可以使用Angular CDK(Component Dev Kit)来实现拖放功能。下面是一个示例,展示如何使用Angular CDK来包装元素并解决拖放的问题:
首先,确保已经安装了Angular CDK。可以通过运行以下命令来安装它:
npm install @angular/cdk
在你的组件中,导入所需的Angular CDK模块:
import { DragDropModule } from '@angular/cdk/drag-drop';
在模块的imports数组中添加DragDropModule:
@NgModule({
imports: [
// other modules
DragDropModule
],
// other configurations
})
export class YourModule { }
在你的模板中,使用cdkDrag指令来包装要拖动的元素,并使用cdkDropList指令来指定可以放置元素的区域。例如:
{{item}}
在组件的代码中,添加onDrop函数来处理元素被拖放时的逻辑。例如:
onDrop(event: CdkDragDrop) {
moveItemInArray(this.items, event.previousIndex, event.currentIndex);
}
在这个示例中,我们使用了moveItemInArray函数来重新排列items数组中的元素。
这是一个简单的例子,展示了如何使用Angular CDK来实现拖放功能。你可以根据自己的需求进行调整和扩展。请确保在使用之前阅读官方文档和示例代码,以了解更多关于Angular CDK拖放功能的信息。