我们使用dropzone.js将文件上传到服务器。它主要是工作,除了一个小的视觉效果。
当用户上传一个或多个文件时,预览元素会添加到dropzone-previews列表中。我们列出了“addedfile”,并在数据表中显示有关上传文件的信息。
如果用户上传了更多文件,这些文件也会添加到dropzone-previews列表中,我们还会将相关信息添加到我们的数据表中。
问题是dropzone-previews列表无限增长,没有任何好处。
我们希望列表显示每个文件上传的成功或失败,但我们希望在每次上传开始时清除列表。也就是说,如果用户上传了三个文件,我们希望在列表中看到三个文件。如果用户随后上传了两个文件,我们希望看到前三个的预览被删除,然后显示两个新上传的文件。
这很简单,如果在第一个文件上传之前有一个事件被触发,但从我看到的情况来看,“addedfile”是第一个始终触发的事件,但它会触发每个文件,并触发它将预览添加到列表后。
此时,我唯一能想到的就是在“完成”事件中使用自定义类标记每个<li>
,然后使用该事件清除每个<li>
“addedfile”。我认为这样可行,但似乎相当圆润,我想知道我是否错过了一种更简单的方法来做到这一点。