色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

element vue 圖片上傳

洪振霞2年前8瀏覽0評論

Element UI 是一個基于 Vue.js 的框架,提供了很多組件,其中包括了文件上傳組件。這個組件使用了 Vue.js 的響應式系統和 Axios 庫,可以輕松地實現圖片上傳功能。

// template// javascript
import axios from 'axios';
export default {
data() {
return {
imageUrl: ''
}
},
methods: {
handleAvatarSuccess(res, file) {
this.imageUrl = URL.createObjectURL(file.raw);
},
beforeAvatarUpload(file) {
const isJPG = file.type === 'image/jpeg';
const isLt2M = file.size / 1024 / 1024< 2;
if (!isJPG) {
this.$message.error('上傳頭像圖片只能是 JPG 圖片格式!');
return false;
}
if (!isLt2M) {
this.$message.error('上傳頭像圖片大小不能超過 2MB!');
return false;
}
return true;
}
}
}

在模板中,我們首先引用 el-upload 組件,然后我們可以使用 action 屬性來指定后端處理文件上傳的接口。接著我們設置 show-file-list 屬性為 false,表示不顯示文件列表。在 on-success 屬性中指定一個回調函數,當上傳成功后會執行該函數,我們可以在該函數中獲取上傳結果以及文件信息。before-upload 屬性也可以指定一個回調函數,該函數在上傳之前被調用,并且如果該函數返回 false,則組件不會上傳該文件。

圖片上傳的邏輯在 javascript 部分實現。我們首先通過 import 引用 axios 庫,axios 是一個基于 Promise 的 HTTP 客戶端。在組件的 data 中定義了一個 imageUrl 變量,表示上傳成功后圖片的 URL 地址。

在 methods 中,我們定義了兩個方法,分別是 handleAvatarSuccess 和 beforeAvatarUpload。handleAvatarSuccess 方法會在上傳成功后執行,并且該方法會傳遞兩個參數,第一個是上傳結果 res,第二個是上傳的文件信息 file。我們可以通過 file.raw 獲取到上傳的原始文件。在 handleAvatarSuccess 方法中,我們把文件 URL 綁定到 imageUrl 變量上,這樣就可以在模板中顯示該圖片了。

beforeAvatarUpload 方法在上傳之前被調用,該方法也會傳遞一個 file 參數,我們可以使用該參數瀏覽上傳文件的信息。在該方法中,我們首先定義了兩個變量 isJPG 和 isLt2M,分別表示文件格式是否為 JPG 和文件大小是否小于 2MB。如果文件格式或大小不符合要求,則使用 this.$message.error 方法提示用戶,并且返回 false,表示不上傳該文件。

Element UI 的文件上傳組件使用了 Axios 庫發送了一個 POST 請求,該請求包含了上傳文件的二進制數據,以及對應的文件名和文件類型等信息。后端服務器接收到該請求后,就可以通過解析請求體來保存上傳的文件。上傳的文件可以存在本地文件系統上,也可以保存到云存儲服務上,例如七牛云、阿里云等。