微信小程式開發之從相簿獲取圖片 使用相機拍照 本地圖片上傳

奮鬥年輕人發表於2017-08-10

http://blog.csdn.net/qq_31383345/article/details/53014610

今天遇到微信小程式的使用者頭像設定功能,做筆記.

先上gif:


再上程式碼:

小demo,程式碼很簡單.

1.index.wxml

<!--index.wxml-->
<button style="margin:30rpx;" bindtap="chooseimage">獲取圖片</button>
<image src="{{tempFilePaths }}" mode="aspecFill" style="width: 100%; height: 450rpx"/>

2.index.js

//index.js
//獲取應用例項
var app = getApp()
Page({
  data: {
    tempFilePaths: ''
  },
  onLoad: function () {
  },
  chooseimage: function () {
    var _this = this;
    wx.chooseImage({
      count: 1, // 預設9
      sizeType: ['original', 'compressed'], // 可以指定是原圖還是壓縮圖,預設二者都有
      sourceType: ['album', 'camera'], // 可以指定來源是相簿還是相機,預設二者都有
      success: function (res) {
        // 返回選定照片的本地檔案路徑列表,tempFilePath可以作為img標籤的src屬性顯示圖片
        _this.setData({
          tempFilePaths:res.tempFilePaths
        })
      }
    })
  }
})

API 說明:


這裡說說sourcetype.預設是從相簿獲取和使用相機拍照,跟微信現在選擇圖片的介面一樣,第一格是拍照,後面的是相簿照片.

這裡注意:返回的是圖片在本地的路徑.如果需要將圖片上傳到伺服器,需要用到另一個API.

示例程式碼:

wx.chooseImage({
  success: function(res) {
    var tempFilePaths = res.tempFilePaths
    wx.uploadFile({
      url: 'http://example.weixin.qq.com/upload', //僅為示例,非真實的介面地址
      filePath: tempFilePaths[0],
      name: 'file',
      formData:{
        'user': 'test'
      },
      success: function(res){
        var data = res.data
        //do something
      }
    })
  }
})

相關文章