uniapp上傳圖片名字維持不變
在uniapp中,我們經常使用到上傳圖片的功能,但是預設情況下,上傳圖片的檔案名稱會被重新命名或不同的平台會有不同的表現,這對於後端處理和前端展示都會帶來不小的問題。所以,在開發中,我們往往需要保持上傳的圖片名字不變。
本文將介紹在uniapp中如何實作上傳圖片名字保持不變的方法。
一、前言
在uniapp中,圖片上傳主要使用uni.uploadFile() 的API介面。透過這個接口,我們可以上傳圖片到伺服器。但是,uni.uploadFile() 會根據不同平台或檔案特殊命名規則為圖片檔案命名,導致我們無法很好地處理上傳的圖片。那麼,在使用 uni.uploadFile() 時,如何保持上傳圖片的名字不變呢?
二、取得上傳圖片原始資訊
我們可以透過uni.chooseImage() API介面選取圖片時,取得圖片的原始信息,取得檔案名稱和後綴名。
uni.chooseImage({ count: 1, success: function(res) { uni.getImageInfo({ src: res.tempFilePaths[0], success: function(infoRes) { //文件名 var fileName = res.tempFilePaths[0].substring(res.tempFilePaths[0].lastIndexOf('/') + 1); //后缀名 var extName = fileName.substring(fileName.lastIndexOf('.')); } }); } });
三、使用 formData 物件上傳圖片
之前我們使用uni.uploadFile()介面上傳圖片,但是,該介面的file參數只能接受檔案路徑,不能接收 FormData 物件。在 this.formData 中,我們可以建立 FormData 對象,將上傳圖片的檔案名稱與檔案資料一起上傳。
uni.chooseImage({ count: 1, success: function(res) { uni.getImageInfo({ src: res.tempFilePaths[0], success: function(infoRes) { //文件名 var fileName = res.tempFilePaths[0].substring(res.tempFilePaths[0].lastIndexOf('/') + 1); //后缀名 var extName = fileName.substring(fileName.lastIndexOf('.')); // 将文件数据赋值到formData对象中 this.formData = new FormData(); this.formData.append('file', res.tempFiles[0].path, fileName + extName); console.log('开始上传文件') uni.uploadFile({ url: '上传文件的url', filePath: res.tempFilePaths[0], name: 'file', formData: this.formData, success: function (res) { console.log(res); } }); } }); } });
透過以上方式,我們就可以保持上傳圖片的名字不變。
四、總結
在 uniapp 中上傳圖片,我們可以透過取得圖片的原始資訊來取得檔案名稱和後綴名,然後再將檔案名稱和資料一起上傳。這樣就可以解決由於不同平台或特殊命名規則所帶來的問題,可以更好地處理上傳的圖片。
以上是uniapp上傳圖片名字維持不變的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

文章討論了在Uni-App中使用SASS和較少的預處理器,詳細的設置,福利和雙重用法。主要重點是配置和優勢。[159個字符]

本文討論了針對Uniapp應用程序的各種測試類型,包括單元,集成,功能,UI/UX,性能,跨平台和安全測試。它還涵蓋了確保跨平台兼容性,並推薦Jes等工具

本文介紹瞭如何使用Uni-App的動畫API,詳細介紹了創建和應用動畫,關鍵功能以及結合和控制動畫時機的方法。CharacterCount:159

文章討論了用於Uniapp開發的調試工具和最佳實踐,重點關注Hbuilderx,微信開發人員工具和Chrome DevTools等工具。

本文詳細介紹了一個Uni-App項目的文件結構,並解釋了關鍵目錄,例如通用,組件,頁面,靜態和unicloud,以及諸如app.vue,main.js,subtest.json,pages.json和uni.scss之類的關鍵文件。它討論了這個o

本文介紹瞭如何使用Uni-App的存儲API(Uni.setStorage,Uni.GetStorage)進行本地數據管理,討論了最佳實踐,故障排除以及突出顯示限制和考慮因素,以進行有效使用。

本文討論了使用Uni-App的API訪問諸如相機和地理位置之類的設備功能,包括權限設置和錯誤處理。
