如何使用AngularCDK拖放库上传文件
我有一个自定义的 angular 文件上传组件,我想使用Angular CDK 拖放。它看起来不错,但是当我尝试实现它来处理文件上传(您将文件拖入拖放区)时,它似乎不起作用,浏览器在新选项卡中打开文件。
我现在拥有的看起来像这样:
<label cdkDropList (cdkDropListDropped)="handleFileDrop($event)">
<span>Drop file here</span>
<input #fileInput type="file" multiple="false" (change)="addFiles(fileInput.files">
</label>
所以我的问题是,我可以使用 Angular CDK 拖放库执行 FileUploads,如果可以,我在这里缺少什么?
回答
据我所知,你不能。
拖放文件会触发与拖放用 CDK指令标记的元素不同的事件(即DragEvent)CdkDrag。
所以你必须参考历久弥新dragenter/ dragleave/drop事件和手动处理逻辑(即添加从降事件的dataTransfer属性的文件(S),可能会改变的dragenter / dragleave期间造型等)。