小程序添加及删除图片(朋友圈)

效果图------点击图片可查看图片,点击右上角×可删除图片,点击+可添加图片

wxml完整代码

<view class="add-box">
  <text class="add-word">发表</text>
  <textarea placeholder="这一刻的想法..." cols="30" rows="10" maxlength="-1"></textarea>

  <block>
    <view class="img-wrap">
      <view class="one-image" wx:for="{{chosenImagePaths}}" wx:key="index">
        <image bindtap="skanImage" class="img-choose" src="{{item}}" data-index="{{index}}" ></image>
        <image src="/imges/删除.png" class="img-delete" data-src="{{item}}" bindtap="deleteimage"></image>
      </view>
      <view class="one-image">
        <image class="img-chooses" src="/imges/添加.png" bindtap="addimage" />
      </view>
    </view>
  </block>
</view>

js完整代码

// pages/publish/publish.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    chosenImagePaths:[]
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },
  addimage() {
    wx.chooseImage({
      count: 9, // 选择图片的最大数量,这里假设最多可选择 9 张图片
      sizeType: ["original"],
      sourceType:['album', 'camera'],
      success: (res) => {
        const temp = res.tempFilePaths // 获取选择的图片临时路径数组
        console.log(temp)
        
        // 将选择的图片路径添加到数组中
        this.setData({
          chosenImagePaths: this.data.chosenImagePaths.concat(temp)
        })
      }
    })
  },
  skanImage(e){
    let imgList = this.data.chosenImagePaths  // 修正这里的变量名,确保与 data 中的属性一致
    let index = e.currentTarget.dataset.index  // 正确获取 index
    wx.previewImage({
      urls: imgList,
      current: imgList[index]
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },
  deleteimage(e){
    let that = this
    let dele = e.currentTarget.dataset.src
    let imgList = that.data.chosenImagePaths.slice();
    wx.showModal({
      title: '删除图片',
      content: '确认删除这张图片吗',
      success(res){
        if(res.confirm){
          for (var i=0; i<imgList.length; i++){
            if(imgList[i] == dele){
              imgList.splice(i, 1)
              that.setData({
                chosenImagePaths:imgList
              })
            }
          }
        }
      }
    })
  },
 

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值