vue解析blob数据库类型报错

vue解析blob数据库类型报错

项目场景:

项目请求是需要上传文件处理之后还要下载文件的,但是难免报错,报错之后解析的也是blob类型。


问题描述

程序发生问题时,解析不了blob,报错:

复制代码
Failed to execute 'decode' on 'TextDecoder': The provided value is not of type '(ArrayBuffer

  • 项目代码:

    const reader = new FileReader()
    reader.readAsText(error.response.data, 'utf-8')
    reader.onload = function (e) {
    const errorMsg = reader.result
    Notification.error({
    title: errorMsg,
    duration: 3000
    })
    }

项目结合了element-ui的代码,error.response.data是一个Blob对象。

解决

其实blob对象有自己的解析方法的,可以直接使用text方法解析,但是这是一个异步对象Promise,所以需要在在后续方法中解析。

复制代码
error.response.data.text().then(res => {
    Notification.error({
      title: res,
      duration: 3000
    })
  })

总结

前端代码还是没那么熟悉,还是得好好研究!

相关推荐
阿正的梦工坊3 小时前
JavaScript 微任务与宏任务完全指南
开发语言·javascript·ecmascript
2301_799073026 小时前
基于 Next.js + 火山引擎 AI 的电商素材智能生成工具实战——字节跳动前端训练营成果
javascript·人工智能·火山引擎
码喽7号7 小时前
Vue学习七:MockJs前端数据模拟
前端·vue.js·学习
RONIN9 小时前
VUE开发环境配置基础(构建工具→单文件组件SFC→css预处理器sass→eslint)及安装脚手架
vue.js
kyriewen119 小时前
项目做了一半想重写?这套前端架构让你少走3年弯路
前端·javascript·chrome·架构·ecmascript·html5
RONIN9 小时前
vue2、vue3区别之混入mixins和过滤器filter
vue.js
RONIN9 小时前
属性透传attribute、vue实例对象方法$nextTick()、虚拟dom与浏览器渲染机制
vue.js
RONIN9 小时前
vue自定义指令与自定义插件
vue.js
RONIN10 小时前
属性透传attribute与性能优化组件(component、异步组件、keep-alive/Suspense/Teleport/Transition)
vue.js
RONIN10 小时前
组件通讯(父传子、子传父、ref属性、表单双向绑定v-model、兄弟间传值Event Bus、插槽、依赖注入)
vue.js