微信小程序系列——上传下载图片以及图片的展示

简介: 微信小程序系列——上传下载图片以及图片的展示

一、上传

wxml:

<button bindtap='upload'>上传文件</button>


js:

首先在data里添加全局变量images

1. data: {data: {
  images: []
},
upload: function(){
  wx.chooseImage({
    count: 1,//数量为1个
    sizeType: ['original', 'compressed'],//选择原图或压缩后的图片
    sourceType: ['album', 'camera'],//选择访问相册、相机
    success(res) {
      // tempFilePath可以作为img标签的src属性显示图片
      const tempFilePaths = res.tempFilePaths
      wx.cloud.uploadFile({
        cloudPath: new Date().getTime() + '.png',
        filePath: tempFilePaths[0], // 文件路径是数组,取第一个
        success: res => {
          // get resource ID
          db.collection('images').add({
            data:{
              fileID: res.fileID
            }
          }).then(res => {
            console.log(res);
          }).catch(err => {
            console.log(err)
          })
        },
        fail: err => {
          // handle error
        }
      })
    }
  })
},

二、下载

wxml:

<block wx:for='{{images}}'>
  <image src='{{item.fileID}}'></image>
  <button size='mini' data-fileid='{{item.fileID}}' bindtap='downloadFile'>文件下载</button>
</block>

js:

downloadFile: function(e){
  wx.cloud.downloadFile({
    fileID: e.target.dataset.fileid,
  }).then(res => {
    // get temp file path
    //保存图片到手机相册
    wx.saveImageToPhotosAlbum({
      filePath: res.tempFilePath,
      success(res) { 
        wx.showToast({
          title: '保存成功',
        })
      }
    })
  }).catch(error => {
    // handle error
  })
},
2.

三、展示图片

云数据库

创建一个集合,名字为:images

wxml:

<button bindtap='getFile'>文件展示</button>
<block wx:for='{{images}}'>
  <image src='{{item.fileID}}'></image>
</block>

js:

1. getFgetFile: function(){
  //使用云函数获取openid
  wx.cloud.callFunction({
    name: 'login'
  }).then(res=>{
    db.collection('images').where({
      _openid: res.result.openid
    }).get().then(res2=>{
      console.log(res2);
      this.setData({
        images: res2.data
      })
    })
  })
},

OK, GAME OVER!

相关文章
|
2月前
|
小程序 JavaScript API
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
这篇文章介绍了如何在uni-app和微信小程序中实现将图片保存到用户手机相册的功能。
1036 0
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
|
3月前
|
小程序
小程序消除图片下边距的三个方法
小程序消除图片下边距的三个方法
53 11
|
2月前
|
算法 小程序 Java
java制作海报三:获取微信二维码详情,并改变大小,合成到海报(另一张图片)上
这篇文章介绍了如何使用Java获取微信小程序的二维码,并将其调整大小后合成到海报(另一张图片)上。
54 0
|
2月前
|
缓存 开发框架 移动开发
uni-app:下载使用uni&创建项目&和小程序链接&数据缓存&小程序打包 (一)
uni-app 是一个跨平台的开发框架,它允许开发者使用 Vue.js 来构建应用程序,并能够同时发布到多个平台,如微信小程序、支付宝小程序、H5、App(通过DCloud的打包服务)等。uni-app 的目标是通过统一的代码库,简化多平台开发过程,提高开发效率。 在这一部分中,我们将逐步介绍如何下载和使用uni-app、创建一个新的项目、如何将项目链接到小程序,以及实现数据缓存的基本方法。
|
4月前
|
小程序 前端开发
|
4月前
|
小程序 开发者
第一个微信小程序的初始化过程、小程序微信开发平台的下载、如何注册一个微信小程序的账号
这篇文章介绍了微信小程序的初始化过程,包括如何注册微信小程序账号、下载微信小程序开发者平台,并指导了新建小程序的详细步骤。
第一个微信小程序的初始化过程、小程序微信开发平台的下载、如何注册一个微信小程序的账号
|
4月前
|
运维 小程序 前端开发
小程序开发问题之在小程序中调用my.chooseImage接口让用户选择图片如何解决
小程序开发问题之在小程序中调用my.chooseImage接口让用户选择图片如何解决
|
5月前
|
前端开发 小程序
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
425 0
|
5月前
|
小程序 开发工具 开发者
入职必会-开发环境搭建31-微信开发者工具下载和安装
微信开发者工具是一款由微信官方推出的开发工具,旨在帮助开发者更高效地进行微信小程序和微信公众号的开发与调试。该工具集成了代码编辑、代码上传、实时预览、调试等功能,能够提供便捷的开发环境和调试工具,帮助开发者快速定位和解决问题。
|
5月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp小程序的图片推荐系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp小程序的图片推荐系统附带文章源码部署视频讲解等
57 0