uniapp 网络图片转本地临时文件
时间: 2023-10-25 22:10:48 浏览: 415
uniapp 生成海报图片base64转换
可以使用uni-app的`uni.downloadFile` API来实现将网络图片转为本地临时文件,具体实现步骤如下:
1. 使用`uni.downloadFile`下载网络图片,例如:
```javascript
uni.downloadFile({
url: 'http://example.com/image.png',
success: function (res) {
console.log('downloadFile success, res', res)
},
fail: function (err) {
console.log('downloadFile fail, err', err)
}
})
```
2. 在`success`回调中,获取下载后的临时文件路径`tempFilePath`,并将其用作图片的src属性,例如:
```javascript
uni.downloadFile({
url: 'http://example.com/image.png',
success: function (res) {
console.log('downloadFile success, res', res)
// 将下载后的临时文件路径tempFilePath作为图片的src属性
const tempFilePath = res.tempFilePath
this.imageSrc = tempFilePath
},
fail: function (err) {
console.log('downloadFile fail, err', err)
}
})
```
3. 如果需要将临时文件保存到本地永久存储,可以使用`uni.saveFile` API将其保存到本地,例如:
```javascript
uni.downloadFile({
url: 'http://example.com/image.png',
success: function (res) {
console.log('downloadFile success, res', res)
// 将下载后的临时文件路径tempFilePath作为图片的src属性
const tempFilePath = res.tempFilePath
this.imageSrc = tempFilePath
// 将临时文件保存到本地永久存储
uni.saveFile({
tempFilePath: tempFilePath,
success: function (res) {
console.log('saveFile success, res', res)
// 保存成功后,可以使用res.savedFilePath获取本地文件路径
},
fail: function (err) {
console.log('saveFile fail, err', err)
}
})
},
fail: function (err) {
console.log('downloadFile fail, err', err)
}
})
```
需要注意的是,临时文件在小程序被关闭或卸载后会被清除,如果需要长期保存文件,应该将其保存到本地永久存储。
阅读全文