我在 Angular 中使用 Angular Material 进行拖放时遇到问题。我将滚动条从其原始位置移动到内部 div,但现在自动滚动不再起作用。我创建了一个 StackBlitz 示例来演示该问题:StackBlitz 示例。
此外,我不想设置特定高度或最大高度,因为项目是动态插入的。
我几乎尝试了一切,但什么也没有
看起来
cdkDropList
依赖于 scrollDispatcher
的 getAncestorScrollContainers
方法,该方法扫描具有 cdkScrollable 指令的容器(参见 here 和 here)。因此,在外部 cdkScrollable
上添加 div
应该可以解决问题。我没有太多使用 cdk 下拉列表,所以我不确定它是否正常工作,但它在拖动项目时滚动,所以我想这就是它应该做的。分叉 stackblitz 这里.
注意:cdk github 的链接指向 v19 的当前存储库,但是对
cdkScrollable
的依赖在问题中原始 stackblitz 中使用的 10.0 中是正确的。