热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

微信小程序云开发之图片上传wx.cloud.uploadFile()

页面按钮<buttonbindtap"addImg"class"addPng&a

页面按钮

js:使用上传图片之前肯定要先选择图片,所以在此之前要使用wx.chooseImage()选择图片,然后在上传图片

addImg : function(){

  wx.chooseImage({//选择图片

      count : 1, //规定选择图片的数量,默认9

      sizeType : [”original”,”compressed”], //规定图片的尺寸, 原图/压缩图

      sourceType : [‘album’,’camera’], //从哪里选择图片, 相册/相机

      success : (chooseres)=>{ //接口调用成功的时候执行的函数

          //console.log(chooseres);

          //选择图片后可以在这里上传

          wx.cloud.uploadFile({

            cloudPath: "img/" + new Date().getTime() +"-"+ Math.floor(Math.random() * 1000),//云储存的路径及文件名

            filePath : chooseres.tempFilePaths[0], //要上传的图片/文件路径 这里使用的是选择图片返回的临时地址

            success : (uploadres) => { //上传图片到云储存成功

              //console.log(uploadres)

              wx.showLoading({ //显示加载提示框 不会自动关闭 只能wx.hideLoading关闭

                title : “图片上传中”, //提示框显示的提示信息

                mask : true, //显示透明蒙层,防止触摸。为true提示的时候不可以对屏幕进行操作,不写或为false时可以操作屏幕

                success : function () {

                    wx.hideLoading() //让提示框隐藏、消失

                }

              });

            },

            fail : (err) => {

              console.log(err)

            }

          })

      },

      fail : (err) => {

        console.log(err)

      }

  })

}

success:(chooseres):

上面的代码中success的返回值chooseres中有三个参数,第一个就是返回的消息,第二个是图片的临时地址列表(数组),不管选择的数量是1还是其他,都是数组,所以取特定位置的值的时候都需要用下标来取;image

第三个是文件对象数组,其中每个位置存放了文件的临时地址path和文件的大小size

image

cloudPath: "img/" + new Date().getTime() +"-"+ Math.floor(Math.random() * 1000):

路径文件夹以 “/” 分割 如果”/”前面的文件夹没有,则会自动创建”/”后面是文件名;

image

success : (uploadres)返回值中有消息、fileID(文件访问路径)、和HTTP状态码

但是和选择不一样的是,每次上传只能上传一张图片,所以每次返回的fileID是文件的访问路径是单一的对应图片访问路径

image

至此小程序的云开发图片上传就完成了


推荐阅读
  • 提升Tumblr爬虫效率与功能
    本文介绍了对之前开发的Tumblr爬虫脚本进行升级,整合了两个脚本的功能,实现了自动分页爬取博客内容,并支持配置文件以下载多个博客的不同格式文件。此外,还优化了图片下载逻辑。 ... [详细]
  • 本文详细介绍了Ionic框架的使用方法及其与Angular的集成。Ionic框架是一个强大的前端开发工具,适用于构建跨平台的移动应用程序。文章将探讨如何引入必要的CSS和JavaScript文件,并解释bundle.js中包含的核心功能,如路由等。 ... [详细]
  • 本文介绍如何使用 Android 的 Canvas 和 View 组件创建一个简单的绘图板应用程序,支持触摸绘画和保存图片功能。 ... [详细]
  • 云函数与数据库API实现增删查改的对比
    本文将深入探讨使用云函数和数据库API实现数据操作(增删查改)的不同方法,通过详细的代码示例帮助读者更好地理解和掌握这些技术。文章不仅提供代码实现,还解释了每种方法的特点和适用场景。 ... [详细]
  • 分享一个简化版的Silverlight链接图项目:Link Map Simplified
    本文介绍了一个使用Silverlight开发的可视化工具,主要用于展示和操作复杂的实体关系图(Graph)。该工具在犯罪调查系统中得到了广泛应用,帮助用户直观地获取和理解相关信息。 ... [详细]
  • 在网站制作中随时可用的10个 HTML5 代码片段
    HTML很容易写,但创建网页时,您经常需要重复做同样的任务,如创建表单。在这篇文章中,我收集了10个超有用的HTML代码片段,有HTML5启动模板、空白图片、打电话和发短信、自动完 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • 在本教程中,我们将深入探讨如何使用 Python 构建游戏的主程序模块。通过逐步实现各个关键组件,最终完成一个功能完善的游戏界面。 ... [详细]
  • JavaScript 中创建对象的多种方法
    本文详细介绍了 JavaScript 中创建对象的几种常见方式,包括对象字面量、构造函数和 Object.create 方法,并提供了示例代码和属性描述符的解释。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 深入理解Vue.js:从入门到精通
    本文详细介绍了Vue.js的基础知识、安装方法、核心概念及实战案例,帮助开发者全面掌握这一流行的前端框架。 ... [详细]
  • 本文详细介绍了在 Windows 7 系统中配置 Nginx 1.10.3 和 PHP 7.1.1 NTS 的步骤,包括修改 PHP 配置文件、处理依赖项以及创建批处理脚本启动和停止服务。重点解释了如何解决常见的运行时错误。 ... [详细]
  • 微信小程序:授权登录与手机号绑定
    本文详细介绍了微信小程序中用户授权登录及绑定手机号的流程,结合官方指引和实际开发经验,提供了一套完整的实现方案,帮助开发者更好地理解和应用。 ... [详细]
  • 本文详细介绍了如何在 Android 中使用值动画(ValueAnimator)来动态调整 ImageView 的高度,并探讨了相关的关键属性和方法,包括图片填充后的高度、原始图片高度、动画变化因子以及布局重置等。 ... [详细]
  • 本文介绍了如何在iOS应用中自定义导航栏按钮,包括使用普通按钮和图片生成导航条专用按钮的方法。同时,探讨了在不同版本的iOS系统中实现多按钮布局的技术方案。 ... [详细]
author-avatar
2012-末日审判
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有