vue 导入文件

<span class="item" @click="chooseFile">导入文件</span>
<!-- 使用 accept 属性能够限定 文件选择的格式 -->
<input type="file" id="file" style="display: none;" accept=".csv" @change="fileInfo(getFileContent)">
chooseFile() {
  // 弹出文件选择框
  let input = document.getElementById('file')
  input.click()
},
fileInfo (callback) {
  // 获取input标签选择的文件,并选择第一条
  let resultFile = document.getElementById('file').files[0]
  // 若是文件存在
  if (resultFile) {
    // 获取文件信息
    this.file = resultFile
    // 获取文件名
    this.fileName = resultFile.name

    // 使用 FileReader 来读取文件
    let reader = new FileReader()

    // 读取纯文本文件,且编码格式为 utf-8
    reader.readAsText(resultFile, 'UTF-8')

    // 读取文件,会触发 onload 异步事件,可以使用回调函数 来获取最终的值.
    reader.onload = function (e) {
      var fileContent = e.target.result
      // 若为回调函数,则触发回调事件
      if (callback && (typeof callback === 'function')) {
        callback(fileContent)
      }
    }
  }
},
getFileContent (fileContent) {
  if (fileContent) {
    var logData = JSON.parse(fileContent);
    this.fileContent = fileContent
    this.graph.fromJSON(logData);
    alert('导入成功');
  }
},
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值