微信小程序调用相册和相机

首先来写好wxml部分:给一个图片列表(img_list)和上传图片的按钮(addimg)

<view class="container">
  <view class='img_body'>
    <view class='img_list'>
      <view class='img_li' wx:for="{{imglist}}" wx:key="{{index}}">
        <image src="{{item}}"></image>
      </view>
      <view class='addimg' bindtap='img_w_show'>
        <image src='../../img/add.png'></image>
      </view>
    </view>
  </view>
</view>

css部分控制如下:

.img_list{
	width: 100vw;
	display: flex;
	display: -webkit-flex;
  padding: 0 20rpx;
  box-sizing: border-box;
  flex-wrap: wrap;
  -webkit-flex-wrap:wrap;
}
.img_list .img_li,
.addimg{
	width: 200rpx;
	height: 250rpx;
	border: 1px solid #999999;
  margin: 5rpx;
  flex-shrink: 0;
  -webkit-flex-shrink:0;
}
.addimg image{
	width: 150rpx;
	height: 150rpx;
	margin: 50rpx 25rpx;
}
.img_list .img_li image{
  width: 100%;
  height: 100%;
}

如果只是想调用下面这个弹窗,微信小程序调用的api是wx.showActionSheet,

代码如下:

wx.showActionSheet({
  itemList: ['从手机相册选择', '拍照'],
  success: function(res) {
    console.log(res.tapIndex)
  },
  fail: function(res) {
    console.log(res.errMsg)
  }
})

调用的图如下:

 

但是,我们是要实现功能的丫

在我的js文件里面先在data里面命名imglist为空数组

然后调用img_w_show函数:

img_w_show(){
    var _this=this;
    wx.chooseImage({
      count: 9, // 默认9
      sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
      sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
      success: function (res) {
        // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
        var tempFilePaths = res.tempFilePaths
        _this.setData({
          imglist: _this.data.imglist.concat(tempFilePaths)
        })
      }
    })
  }
})

使用情况如下:

  • 10
    点赞
  • 60
    收藏
  • 打赏
    打赏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

impossible1994727

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值