我在stackblitz(某种代码窗格(中错误地处理了一个早于10的角度版本。
在这里我找到了移动的函数进入github。但这对我的案子没有帮助。基于网格的拖放,能够在不同的可拖动容器之间拖动。从棱角分明的拖放网格分叉而来。当我升级到最新版本(12.1.2(时,唯一的错误是
this.placeholder.enter(
drag,
drag.element.nativeElement.offsetLeft,
drag.element.nativeElement.offsetTop
);
错误:Property 'enter' does not exist on type 'CdkDropList<any>'
我发现的唯一引用是这个来自堆栈溢出的页面。当我尝试该解决方案时,行为被搞砸了,控制台正在记录这个错误ncaught RangeError: Maximum call stack size exceeded
。
目前的情况就是这样。
我希望在不丢失功能的情况下将此功能转移到最新的CDK版本。
当我在版本之间来回切换时,我注意到cdkDropListEnterPredicate
的行为并不像它对.的使用那样起作用
在v9中,cdkDropListEnterPredicate
调用每个像素的函数,但对于v12,行为发生了变化。
要查看操作中的错误,请转到package.json
并从"@angular/cdk": "9.1.2"
更改至:"@angular/cdk": "12.1.2"
我尝试过使用dragRef
和dropListRef
,但都失败了。
请点击查看示例。。。。。。[此处](https://stackblitz.com/edit/angular-cdk-drag-drop-sortable-flex-wrap-if3hjb?file=src/app/app.component.html)
现在有了新版本,我们可以用单个方法(cdkDragEntered(替换以前的所有方法,它将处理所有事情。