在Vue2中以另一种方法检索e.target.files

时间:2018-08-10 11:27:40

标签: vuejs2

我是Vue的新手。 如何从e.target.files访问submit()? 尝试使用裁判-this.$refs.myFileInput.value,但没有给我FileList{File(17050)...}对象。

console.log(e.target.files[0])中的

imageChanged(e)给出了我需要的内容:File(17050) {name: "hello.jpg", size: 17050, ...}

现在输入代码:

imageChanged (e) {
      console.log(e.target.files[0])
      let files = e.target.files
      for (var i = files.length - 1; i >= 0; i--) {
        let fileReader = new FileReader()
        fileReader.readAsDataURL(files[i])
        fileReader.onload = (e) => {
          this.attachedFile.allData.push({file: e.target.result, size: files[i].size, type: files[i].type, inputnameispreview: this.picked, webtemplateid: this.$route.params.id, filename: files[i].name})
        }
      }
    },
submit () {
      let self = this
      api.post('http:..', this.attachedFile)... 

1 个答案:

答案 0 :(得分:2)

希望您设置了这样的引用

<input type="file" id="file" ref="myInputFile" class="">

在Js中,您可以像这样访问文件

 this.$refs.myInputFile.files

代替

 this.$refs.myInputFile.value