vue2.0連接阿里云并使用el-upload上傳圖片

1、首先安裝依賴
npm install ali-oss
2、封裝client

var OSS = require('ali-oss').Wrapper
export function client() {
  var client = new OSS({
    region: '。。。',
    accessKeyId: '。。。',
    accessKeySecret: '。。。。',
    bucket: '。。。'
  })  //后端提供數(shù)據(jù)
  return client
}

3、頁面使用

  • HTML
<el-upload :http-request="Upload" :multiple="true" 
:show-file-list="false" action="">
 <el-button size="small" type="primary">點擊上傳</el-button>
</el-upload>

因為樣式為自定義的 所以沒有用element的自動的屬性,這里配置根據(jù)項目需求,如果需要自定義,按照以下配置
http-request:覆蓋默認(rèn)的上傳行為,可以自定義上傳的實現(xiàn)
show-file-list:是否顯示已上傳文件列表,默認(rèn)是true
multiple:是否支持多選文件
action:必選參數(shù),上傳的地址
(如果不自定義上傳行為,可以直接在action配置地址就行,沒有地址可以為空,但是不能不寫action)

  • js

引入之前封裝的連接阿里服務(wù)器的client

import { client } from '@/utils/alioss'

上傳方法

Upload(file) {
      var fileName = 'banner' + file.file.uid 
//定義唯一的文件名,打印出來的uid其實就是時間戳
      client().put(fileName, file.file).then(
result => {
   // 大功搞成  
     //下面是如果對返回結(jié)果再進(jìn)行處理,根據(jù)項目需要,下面是我們自己項目所用的,僅供參考
         this.fileList[0] =
            { 
              'name': result.name, 
               'url': result.url 
               }
          uploadBannerPic(this.fileList).then(res => { 
            //根據(jù)需要可能項目還需對自己的數(shù)據(jù)庫進(jìn)行保存
          })
 })
},
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容