ElementUI的Upload上传,配合七牛云储存图片

Stella981
• 阅读 660

七牛云服务器的储存区域

存储区域

地域简称

上传域名

华东

z0

服务器端上传:http(s)://up.qiniup.com

华东

z0

客户端上传: http(s)://upload.qiniup.com

华北

z1

服务器端上传:http(s)://up-z1.qiniup.com

华北

z1

客户端上传: http(s)://upload-z1.qiniup.com

华南

z2

服务器端上传:http(s)://up-z2.qiniup.com

华南

z2

客户端上传: http(s)://upload-z2.qiniup.com

北美

na0

服务器端上传:http(s)://up-na0.qiniup.com

北美

na0

客户端上传: http(s)://upload-na0.qiniup.com

东南亚

as0

服务器端上传:http(s)://up-as0.qiniup.com

东南亚

as0

客户端上传: http(s)://upload-as0.qiniup.com

<template>
  <div class="container">
    <div class="title"><h2>ElementUI的Upload上传图片到七牛云</h2></div>
    <el-upload
      class="upload-demo"
      drag
      :action="upload_qiniu_url"
      :show-file-list="false"
      :on-success="handleAvatarSuccess"
      :on-error="handleError"
      :before-upload="beforeAvatarUpload"
      :data="qiniuData">
      <img v-if="imageUrl" :src="imageUrl" class="avatar">
      <div v-else class="el-default">
        <i class="el-icon-upload"></i>
        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
      </div>
      <div class="el-upload__tip" slot="tip">只能上传jpg/png文件,且不超过2MB</div>
    </el-upload>
  </div>
</template>

<script>
export default {
  data() {
    return {
      qiniuData: {
        key: "",
        token: ""
      },
      // 七牛云上传储存区域的上传域名(华东、华北、华南、北美、东南亚)
      upload_qiniu_url: "http://upload-z1.qiniup.com",
      // 七牛云返回储存图片的子域名
      upload_qiniu_addr: "http://abc.clouddn.com/",
      imageUrl: "",
      Global: {
        dataUrl: 'http://yoursite.com'
      }
    };
  },
  created() {
    this.getQiniuToken();
  },
  methods: {
    getQiniuToken: function() {
      const _this = this;
      this.$axios
        .post(this.Global.dataUrl + "/qiniu/uploadToken")
        .then(function(res) {
          console.log(res);
          if (res.data.success) {
            _this.qiniuData.token = res.data.result;
          } else {
            _this.$message({
              message: res.data.info,
              duration: 2000,
              type: "warning"
            });
          }
        });
    },
    beforeAvatarUpload: function(file) {
      this.qiniuData.key = file.name;
      const isJPG = file.type === "image/jpeg";
      const isPNG = file.type === "image/png";
      const isLt2M = file.size / 1024 / 1024 < 2;
      if (!isJPG && !isPNG) {
        this.$message.error("图片只能是 JPG/PNG 格式!");
        return false;
      }
      if (!isLt2M) {
        this.$message.error("图片大小不能超过 2MB!");
        return false;
      }
    },
    handleAvatarSuccess: function(res, file) {
      this.imageUrl = this.upload_qiniu_addr + res.key;
      console.log(this.imageUrl);
    },
    handleError: function(res) {
      this.$message({
        message: "上传失败",
        duration: 2000,
        type: "warning"
      });
    }
  }
};
</script>

<style scode>
.title{
  margin:90px 0 40px 0;
}
.el-default .el-icon-upload {
  margin-top: 125px;
}
.el-upload-dragger {
  width: 350px;
  height: 350px;
}
.avatar {
  width: 350px;
  height: 350px;
  display: block;
}
</style>
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
Ueditor结合七牛云及百度云存储(JAVA版,ueditor
【前言】之前研究了ueditor直接上传图片文件到七牛云以及百度云存储,见下面两篇文章:http://uikoo9.com/blog/detail/ueditorforbcs(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fuikoo9.com%2Fblog%2Fdetail%
国庆假期玩不停双重好礼放肆领
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天AW
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天$20
AWS国庆双重礼,仅限7天
自2021年10月1日00:00起至2021年10月7日24:00,新注册并激活(需全部完成账号注册的五个步骤,否则账号状态并未激活)AWS海外区域账户,填写页面下方表单,即可申领价值$200美元的AWS海外区域账户服务抵扣券直充到您的账户,用以抵扣服务消费,助您轻松体验多个云迁移应用场景。同时,您还可获赠AWS精美祥云纪念T恤一件。,仅限7天$20
Wesley13 Wesley13
3年前
thinphp php 七牛云sdk 图片上传
安装七牛云sdk图片上传在项目根目录下phpcomposer.pharrequireqiniu/phpsdk,或者composerrequireqiniu/phpsdk等待即可完成。在vendor下可以看到qiniu目录在七牛云账号设置里面找到自己的ak和sdk
Wesley13 Wesley13
3年前
PHP 文件上传的原理及案例分析
原理将客户端文件上传至服务器端,在服务器端临时存储,再将服务器端临时存储的文件移至指定位置实现文件上传需要的知识点:前端页面1.form表单必须是用post发送方式,因为get会将参数带到url中,而上传的文件转换后字符会很长,而且也是为了安全性2.form表单需要使用enctype
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这