element-ui中upload上传文件可以不经过后端,直接得到一个url供给前端接口获取吗

还有就是参数action是什么意思,是存放上传后文件的地址吗?这个action中的地址不可以随便写吗(我随便写了,访问不到任何东西)?

阅读 6.4k
3 个回答

1.可以不经过后台,通过action绑定一个完整的链接即可
2.参数action就是上传的地址
3.action中的地址可以随便写,配置:auto-upload="false",就可以手动上传

那还不如用原生的input上传吧,然后获取上传的文件的base64,然后显示到前台

 <div class="upload-img">
    <input type="file" name="upload" @change="uploadImg($event, 1)" id="upload">
    <img :src="showUrl" alt srcset>
  </div>
  
 uploadImg (e) {
      const file = e.target.files[0]
      if (!/\.(gif|jpg|jpeg|png|bmp|GIF|JPG|PNG)$/.test(e.target.value)) {
        this.$message.error('图片类型必须是.gif,jpeg,jpg,png,bmp中的一种!')
        return false
      }
      var reader = new FileReader()
      // 转化为base64
      reader.readAsDataURL(file)
      reader.addEventListener("load", () => {
        this.showUrl = reader.result
        this.$emit('success', reader.result)
      }, false);

    }

上传可以不经过后端,但是必须要规定上传到哪来,可以上传到第三方的服务器(七牛云)等

action="'https://upload.qiniup.com'" // 七牛服务器地址

action就是上传服务器的地址,这是上传七牛服务器的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏