Angular Material cdkDrag拖拽,目标元素如何使用?

标签 angular angular-material

我找不到任何关于如何使用 Angular Material “cdkDrag”拖动目标元素的文档。 每当拖动 Material 图标时,在这种情况下 drag-selector__controls 是否有可能拖动父元素?

这是拖动整个元素的当前示例。

<div cdkDrag class="drag-selector__controls" >
    <i class="material-icons">
        drag_indicator
    </i>
</div>

我想做的是这样的

<div #containerElement class="drag-selector__controls" >
    <i cdkDrag="containerElement" class="material-icons">
        drag_indicator
    </i>
</div>

提前致谢。

最佳答案

默认情况下,用户可以拖动整个 cdkDrag 元素来移动它。如果你想限制用户只能使用 handle 元素这样做,你可以通过将 cdkDragHandle 指令添加到 cdkDrag 内的元素来实现。

使用cdkDragHandle

<div cdkDrag class="drag-selector__controls">
    <i class="material-icons" cdkDragHandle>
        drag_indicator
    </i>
</div>

https://stackblitz.com/angular/ngdbdrajxqj?file=app%2Fcdk-drag-drop-handle-example.ts

https://material.angular.io/cdk/drag-drop/overview

关于Angular Material cdkDrag拖拽,目标元素如何使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58111489/

相关文章:

angular - 调用插值,即使 ChangeDetectionStrategy.OnPush

javascript - 当同时注入(inject)数据时,异步数据在 Material 底板组件中不可用

angular - 在 Angular Material 表中更改时计算并显示输入字段的总计

javascript - 无法在 Angular-Material 应用程序上实现 Angular-intro.js

Angular Material Stepper,每个步骤都有单独的组件 - ExpressionChangedAfterItHasBeenCheckedError

javascript - 如何从 Angular 通用构建中删除 sourceMappingURL?

angular - 带有 Angular 的 Font Awesome 5

javascript - checkin 组件在 Angular 中为空

visual-studio - ASP Core 发布前/发布后操作安装 Angular2 工具然后构建

angular - 每行的 mat-table 中的 formGroup 数组