一.要点 1.选取图片 - wx.chooseImage({
- sizeType: [], // original 原图,compressed 压缩图,默认二者都有
- sourceType: [], // album 从相册选图,camera 使用相机,默认二者都有
- success: function (res) {
- console.log(res);
- var array = res.tempFilePaths, //图片的本地文件路径列表
- }
- })
2.上传图片 - wx.uploadFile({
- url: '', //开发者服务器的 url
- filePath: '', // 要上传文件资源的路径 String类型!!!
- name: 'uploadFile', // 文件对应的 key ,(后台接口规定的关于图片的请求参数)
- header: {
- 'content-type': 'multipart/form-data'
- }, // 设置请求的 header
- formData: { }, // HTTP 请求中其他额外的参数
- success: function (res) {
- },
- fail: function (res) {
- }
- })
二.代码示例 - // 点击上传图片
- upShopLogo: function () {
- var that = this;
- wx.showActionSheet({
- itemList: ['从相册中选择', '拍照'],
- itemColor: "#f7982a",
- success: function (res) {
- if (!res.cancel) {
- if (res.tapIndex == 0) {
- that.chooseWxImageShop('album')
- } else if (res.tapIndex == 1) {
- that.chooseWxImageShop('camera')
- }
- }
- }
- })
- },
- chooseWxImageShop: function (type) {
- var that = this;
- wx.chooseImage({
- sizeType: ['original', 'compressed'],
- sourceType: [type],
- success: function (res) {
-
- /*上传单张
- that.data.orderDetail.shopImage = res.tempFilePaths[0],
- that.upload_file(API_URL + 'shop/shopIcon', res.tempFilePaths[0])
- */
-
- /*上传多张(遍历数组,一次传一张)
- for (var index in res.tempFilePaths) {
- that.upload_file(API_URL + 'shop/shopImage', res.tempFilePaths[index])
- }
- */
- }
- })
- },
- upload_file: function (url, filePath) {
- var that = this;
- wx.uploadFile({
- url: url,
- filePath: filePath,
- name: 'uploadFile',
- header: {
- 'content-type': 'multipart/form-data'
- }, // 设置请求的 header
- formData: { 'shopId': wx.getStorageSync('shopId') }, // HTTP 请求中其他额外的 form data
- success: function (res) {
- wx.showToast({
- title: "图片修改成功",
- icon: 'success',
- duration: 700
- })
- },
- fail: function (res) {
- }
- })
- },
|