我目前正在一个Angular应用程序中开发一个功能,它涉及一个自定义的多选组件.其目标是允许用户从这个菜单中 Select 多个项目,然后通过拖放对这些选定的项目进行重新排序.
然而,我遇到了一些我无法解决的挑战:

  1. 不正确的拖放索引:每当拖放一个项目时,它最终主要被放在列表的开头(索引0),而不考虑预期的拖放位置.
  2. 静态占位符:指示项目将被放置到的位置的占位符不会随着被拖动的项目一起移动,这使得用户很难理解项目在释放时将被放置在哪里. 我花了相当多的时间try 调试和修复这些问题,但没有成功.我正在联系社区,寻求任何可以帮助我克服这些障碍的建议、见解或解决方案.

这是我在StackBlitz上项目的简化版本的链接,它展示了我面临的问题:StackBlitz Example

如能就如何解决这些问题提供任何建议或指导,我们将不胜感激.提前感谢您的时间和帮助!

推荐答案

在StackBlitz上的示例中,您只是忘记了将参数cdkDropListOrientation="horizontal"添加到cdkDropList div.(请参见文档中的example)如果没有此参数,ANGLING将始终将被拖动对象的位置解释为第一个,因为它需要垂直容器.

Angular相关问答推荐

如何从Angular TS文件传递$Events对象?

Angular 17上的material 工具提示的自定义样式

无法执行客户端功能Angular 17与ssr'

身份验证卫士给了我17个Angular 的任何类型

未触发HTTP拦截器

如何从URL中角下载图片?

我应该对我想要在我的Angular 17+组件中显示的任何变量使用信号吗?

Router.navigate() 在功能拦截器内不起作用

RxJS如何按顺序进行POST请求,只有在前一个完成后才会触发新的请求?

无法使用@ngrx/component-store 在其他组件中获取状态更改值

iss 声明无效 Keycloak

Angular:显示带有嵌套子项的内容投影

如何停止在 ngOnInit() 之前调用的 ngOnChanges

设置 Angular Material Tooltip 的字体大小

`[(ngModel)]` vs `[(value)]`

如何从 EventEmitter 函数返回值?

Angular 2:组件交互,可选输入参数

RxJS - 发生错误时观察到的不会完成

如何在 Angular 4 中翻译 mat-paginator?

Hot and Cold observables:有 hot和 cold运算符吗?