WeChat applet realizes the function of uploading pictures

WeChat applet realizes the function of uploading pictures

This article example shares the specific code for uploading pictures in WeChat applet for your reference. The specific content is as follows

Rendering

WXML

<view class="img-wrap">
  <view class="txt">Upload picture</view>
  <view class="imglist">
    <view class="item" wx:for="{{imgs}}" wx:key="item">
      <image src="{{item}}" alt=""></image>
      <view class='delete' bindtap='deleteImg' data-index="{{index}}">
        <image src="../../../images/icon.png"></image>
      </view>
    </view>
    <view class="last-item" wx:if="{{imgs.length >= 3 ? false : true}}" bindtap="bindUpload">
      <text class="sign">+</text>
    </view>
  </view>
</view>

JS

data: {
  imgs: [],
  count: 3
},
bindUpload: function (e) {
  switch (this.data.imgs.length) {
    case 0:
      this.data.count = 3
      break
    case 1:
      this.data.count = 2
      break
    case 2:
      this.data.count = 1
      break
  }
  var that = this
  wx.chooseImage({
    count: that.data.count, // default is 3
    sizeType: ["original", "compressed"], // You can specify whether it is the original image or the compressed image. Both are available by default sourceType: ["album", "camera"], // You can specify whether the source is the album or the camera. Both are available by default success: function (res) {
      // Returns a list of local file paths for the selected photos. tempFilePath can be used as the src attribute of the img tag to display the image var tempFilePaths = res.tempFilePaths
      for (var i = 0; i < tempFilePaths.length; i++) {
        wx.uploadFile({
          url: 'https://graph.baidu.com/upload',
          filePath: tempFilePaths[i],
          name: "file",
          header: {
            "content-type": "multipart/form-data"
          },
          success: function (res) {
            if (res.statusCode == 200) {
              wx.showToast({
                title: "Upload Successfully",
                icon: "none",
                duration: 1500
              })

              that.data.imgs.push(JSON.parse(res.data).data)

              that.setData({
                imgs: that.data.imgs
              })
            }
          },
          fail: function (err) {
            wx.showToast({
              title: "Upload failed",
              icon: "none",
              duration: 2000
            })
          },
          complete: function (result) {
            console.log(result.errMsg)
          }
        })
      }
    }
  })
},
// Delete the image deleteImg: function (e) {
  var that = this
  wx.showModal({
    title: "Tips",
    content: "Delete",
    success: function (res) {
      if (res.confirm) {
        for (var i = 0; i < that.data.imgs.length; i++) {
          if (i == e.currentTarget.dataset.index) that.data.imgs.splice(i, 1)
        }
        that.setData({
          imgs: that.data.imgs
        })
      } else if (res.cancel) {
        console.log("User clicks Cancel")
      }
    }
  })
}

WXSS

.wrap {
  width: 100%;
  padding: 0 30rpx;
  box-sizing: border-box;
}
.wrap .img-wrap {
  font-size: 30rpx;
  color: #33373E;
  margin-bottom: 10rpx;
}
.wrap .img-wrap .txt {
  margin-bottom: 20rpx;
}
.wrap .img-wrap .imglist {
  display: flex;
  flex-wrap: wrap;
}
.wrap .img-wrap .imglist .item {
  width: 150rpx;
  height: 150rpx;
  margin-right: 22rpx;
  margin-bottom: 10rpx;
  position: relative;
}
.wrap .img-wrap .imglist .last-item {
  width: 150rpx;
  height: 150rpx;
  text-align: center;
  line-height: 146rpx;
  border: 2rpx dashed #8B97A9;
  box-sizing: border-box;
}
.wrap .img-wrap .imglist .item image {
  width: 100%;
  height: 100%;
}
.wrap .img-wrap .imglist .item .delete {
  width: 30rpx;
  height: 30rpx;
  position: absolute;
  top: -14rpx;
  right: -12rpx;
}

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • WeChat applet batch upload pictures to Qiniu (recommended)
  • WeChat applet uploads pictures and compresses them proportionally to the specified size example code
  • Analysis of the process of uploading and cropping pictures in WeChat applet
  • How to upload pictures to PHP server in WeChat applet
  • Implementation code for uploading and compressing pictures in WeChat applet
  • WeChat applet upload picture function (with backend code)
  • WeChat applet upload picture example
  • WeChat applet realizes the function of uploading pictures
  • WeChat applet uploads pictures to the server example code

<<:  Docker /var/lib/docker/aufs/mnt directory cleaning method

>>:  Tutorial diagram of installing mysql8.0.18 under linux (Centos7)

Recommend

MySQL database architecture details

Table of contents 1. MySQL Architecture 2. Networ...

Implementation of Vue counter

Table of contents 1. Implementation of counter 2....

Vue.js implements tab switching and color change operation explanation

When implementing this function, the method I bor...

Detailed usage of Linux text search command find

The find command is mainly used to find directori...

Detailed explanation of the payment function code of the Vue project

1. Alipay method: Alipay method: Click Alipay to ...

Tips for designing photo preview navigation on web pages

<br />Navigation does not just refer to the ...

Sample code for cool breathing effect using CSS3+JavaScript

A simple cool effect achieved with CSS3 animation...

How to generate PDF and download it in Vue front-end

Table of contents 1. Installation and introductio...

Vue implements scrollable pop-up window effect

This article shares the specific code of Vue to a...

How to transfer files between Docker container and local machine

To transfer files between the host and the contai...

Docker Data Storage Volumes Detailed Explanation

By default, the reading and writing of container ...

MySQL stored procedure method example of returning multiple values

This article uses an example to describe how to r...

Summary of using MySQL isolation columns and prefix indexes

Table of contents Isolate Data Columns Prefix Ind...

CSS3 Bezier Curve Example: Creating Link Hover Animation Effects

We will use CSS3 animated transitions to create a...