el-upload上传图片到七牛云或阿里云

(1)绑定上传地址,上传数据对象

html 复制代码
<el-upload class="upload-demo" :action="uploadUrl" :data="uploadData"
 :on-success="handleSuccess" :file-list="[]" :show-file-list="false" :limit="1">
</el-upload>

(2)定义数据

javascript 复制代码
// 商户的driver
driver: null,
// 图片上传的路径
uploadUrl: '',
// 上传图片的携带的信息
uploadData: {},
// 图片的链接头部分
cdn: ""

(3)定义方法

图片的路径就是图片头加上返回的key

javascript 复制代码
/**
 * 获取获取商户的driver
 */
async getDriver() {
   let res = await customerService.getDriver();
   if (res.code == 200) {
       this.driver = res.data.cdn_driver;
       this.cdn = res.data.cdn;
       this.driver ? this.getUploadToken() : "";
   }
},
/**
 * 上传图片获取token
 */
async getUploadToken() {
   let params = {
      driver: this.driver
   };
   let res = await customerService.getUploadToken(params);
   if (res.code == 200) {
      switch (this.driver) {
        case 'oss':
            this.uploadData = {
                OSSAccessKeyId: res.data.accessid,
                policy: res.data.policy,
                success_action_status: '200',
                callback: res.data.callback,
                signature: res.data.signature,
                dir: res.data.dir
            };
            this.uploadUrl = res.data.host;
            break;
         case 'qiniu':
            this.uploadData = {
                dir: '',
                token: res.data.token
             };
            this.uploadUrl = "https://up.qiniup.com";
       }
   }
},
/**
 * 上传图片成功
 */
handleSuccess(res, file, fileList) {
   // 图片的路径就是图片头加上返回的key
   let imgUrl = `${this.cdn}${res.key}`;
}
相关推荐
李明卫杭州28 分钟前
Vue3 响应式概念 ↔ React 对应方案(类组件与函数组件)对照笔记
前端·vue.js·react.js
windliang30 分钟前
Claude Code 源码分析(二):CC 的心脏 queryLoop Agent主循环
前端·ai编程·claude
Revolution6136 分钟前
reactive 对象重新赋值后,表单为什么没有恢复默认值
前端·vue.js·面试
米饭同学i38 分钟前
微信小程序 input maxlength 遇上输入法拼音被截断?这是最完整的解决方案
前端
董员外39 分钟前
RAG 系统进化论(二):Naive RAG,检索增强生成的最小闭环
前端·人工智能·后端
脾气有点小暴43 分钟前
ECharts 伪 3D 柱状图完整注释 + 实现原理说明
前端·3d·信息可视化·vue·echarts
掘金一周1 小时前
看看大家每月的成本有多少 | 沸点周刊 7.30
前端·人工智能·后端
ji_shuke1 小时前
从零深入:基于 Playwright + Pytest + Allure 的企业级 Web 端到端自动化测试框架实战
前端·自动化测试·docker·jenkins·pytest·allure·playwright
陆枫Larry2 小时前
用 CSS Mask + background-color 给图标「换色」
前端
幼儿园技术家2 小时前
原来不用发版也可以做到版本更新
前端·js or ts