鍍金池/ 問(wèn)答/HTML/ 上傳文件組件,上傳期間繼續(xù)添加上傳的文件

上傳文件組件,上傳期間繼續(xù)添加上傳的文件

自己做的上傳組件,是根據(jù)data里的files數(shù)組渲染,每次添加文件都會(huì)在原來(lái)的files數(shù)組上 concat新的文件對(duì)象。
clipboard.png
鏈?zhǔn)缴蟼魑募椒ㄈ缦?/p>

  function uploadFileList(list, callback) {
    if (list.length) {
      uploadFile(list[0], function() {
        let newList = list.slice(1, list.length)
        uploadFileList(newList, callback)
      })
    } else {
      callback()
    }
    function uploadFile(file, cb) {
    .....
    }

調(diào)用時(shí)

        this.files = this.files.concat(data)
        uploadFileList(this.files, function() {
            // 多文件串行上傳
          that.uploadNum--
        })
        
       在邏輯里,我的uploadFileList方法只會(huì)調(diào)用一次,但是在上傳過(guò)程中files數(shù)組是不斷會(huì)改變,會(huì)被添加進(jìn)新的文件對(duì)象的。
       問(wèn)下要如何修改來(lái)應(yīng)對(duì)呢。
回答
編輯回答
不將就

watch files不就好了。對(duì)新增的值調(diào)用uploadFile。
不過(guò)沒看懂你這個(gè)組件的上傳的時(shí)機(jī),是需要手動(dòng)調(diào)用才開始第一次上傳么,然后后續(xù)有文件,不管還有沒有進(jìn)行中的任務(wù)都自動(dòng)上傳?

2018年1月13日 11:42