var uploadPicture = require('../Album/common.js') const app = getApp() Page({ //获取应用实例 data: { // 上传的案例图片集合 uploadImages: [], // 设置上传案例图片的最大数目 maxImages: 8, // 案例图片数目是否达到了最大数目 isMaxImagesNum: false, initial:'', imglength:'', enlarge:'', //放大 Displayhiding:false, }, onShow: function (options) { var that = this; // // 获取图片信息 let initial_url = 'my/images/albumchange'; let initial_data = { }; app.postRequest(initial_url, initial_data, function (res) { that.setData({ initialcode: res.code, //获取未上传状态 }); // console.log(res.data[0].img) if (res.code == 201) { console.log(res.data) that.setData({ initial: res.data, // 初始数 imglength: res.data.length, }) // 对象转数组 var itemList = res.data; //声明一个空的数组 var items = []; //遍历数据 for (let i in itemList) { //push到空数组里 items.push(itemList[i].img); } console.log(items); //传输数据到页面 that.setData({ enlarge: items, }) // console.log(res.data.length); // console.log(that.data.maxImages); if (res.data.length >= that.data.maxImages) { //判断图片,大于或等于8张时,隐藏 that.setData({ isMaxImagesNum: true }); }else{ that.setData({ isMaxImagesNum: false }); } } }) }, // 选择图片 chooseImageTap: function () { let _this = this; wx.showActionSheet({ itemList: ['从相册中选择', '拍照'], itemColor: "#f7982a", success: function (res) { if (!res.cancel) { if (res.tapIndex == 0) { _this.chooseWxImage('album') } else if (res.tapIndex == 1) { _this.chooseWxImage('camera') } } } }) }, // 选图 chooseWxImage: function (type) { let _this = this; var picsItems; var _imglength = _this.data.maxImages - _this.data.imglength; console.log(_imglength) wx.chooseImage({ // 相关属性设置 count: _imglength, sizeType: ['original', 'compressed'], sourceType: [type], success: function (res) { var imgsrc = res.tempFilePaths; // concat数组连接,且不会改变现有数组 var picss = _this.data.uploadImages.concat(imgsrc); picss = picss.slice(0, 8); //每次只要前8条数组 // console.log(picss); var imagesArr = ''; //用来做JSON格式 // console.log(picss.length); // 判断选择的数量是否超过设定数量 let num = picss.length <= _this.data.maxImages ? picss.length : _this.data.maxImages; for (var i = 0; i < num; i++) { // 凭接 imgurl名称 imagesArr += '{"imgurl":"' + picss[i] + '"},'; } // console.log(imagesArr); imagesArr = JSON.parse('[' + imagesArr.substring(0, imagesArr.length - 1) + ']'); //转换成JSON数据 _this.setData({ uploadImages: picss, picsItems: imagesArr }); _this.submitAction(); } }) }, m_showActionSheet: function (e){ let that = this; wx.showActionSheet({ itemList: ['预览图片', '修改图片', '删除图片'], success(res) { // console.log(res.tapIndex) if(res.tapIndex == 0){ //预览所选图片 // console.log(that.data.uploadImages); // console.log(e.currentTarget.dataset.src); wx.previewImage({ urls: that.data.enlarge, current: e.currentTarget.dataset.src }) } if (res.tapIndex == 1) { //修改所选图片 var imgid = e.currentTarget.dataset.id;//获取当前长按图片ID // console.log(imgid); wx.chooseImage({ count: 1, sizeType: ['original', 'compressed'], sourceType: ['album', 'camera'], success(res) { console.log(imgid); //上传 wx.uploadFile({ url: app.globalData.url + 'my/images/albumedit', filePath: res.tempFilePaths[0], name: 'img', formData: { img_id: imgid, key: wx.getStorageSync('access_key'), token: wx.getStorageSync('access_token'), }, success: function (res) { var data = JSON.parse(res.data); if (data.code == 201) { that.onShow(); // wx.showModal({ // title: '提示', // content: '修改成功', // showCancel: false, // }) } }, fail: function (d) { } }) } }) } //修改所选图片 结束 if (res.tapIndex == 2) { //删除所选图片 let index = e.currentTarget.dataset.id;//获取当前长按图片下标 // // 删除相片 let delete_url = 'my/images/albumdelete'; let delete_data = { img_id: index, }; app.postRequest(delete_url, delete_data, function (res) { console.log(that.data.initialcode) if (res.code == 201) { // wx.navigateTo({ // url: '/pages/personal_core/Album/Album' // }) // console.log(that.data.imglength) if (that.data.imglength==1){ // that.setData({ // Displayhiding:true, // }); } that.onShow(); } }) // 直接删除 } //删除所选图片 结束 }, fail(res) { console.log(res.errMsg) } }) }, // 预览所选图片 selImagePre: function (e) { }, // 删除图片 // deleteImage: function (e) { // var that = this; // var uploadImages = that.data.uploadImages; // var index = e.currentTarget.dataset.id;//获取当前长按图片下标 // wx.showModal({ // 弹窗提示是否删除 // title: '提示', // content: '确定要删除此图片吗?', // success: function (res) { // if (res.confirm) { // console.log('点击确定了'); // uploadImages.splice(index, 1); // } else if (res.cancel) { // console.log('点击取消了'); // return false; // } // that.setData({ // uploadImages // }); // } // }) // 直接删除 // uploadImages.splice(index, 1); // var imagesArr = ''; //用来做JSON格式 // let num = uploadImages.length; //数组的总数 // // console.log(num); // for (var i = 0; i < num; i++) { // imagesArr += '{"imgurl":"' + uploadImages[i] + '"},'; // 凭接 imgurl名称 // } // // console.log(imagesArr); // imagesArr = JSON.parse('[' + imagesArr.substring(0, imagesArr.length - 1) + ']'); //转换成JSON数据 // console.log(imagesArr); // that.setData({ // picsItems: imagesArr // }); // if (num < that.data.maxImages) { //判断图片,小于8张时,显示 // that.setData({ // isMaxImagesNum: false // }); // } // }, // 图片上传 submitAction: function () { let _this = this; // console.log(_this.data.uploadImages) // 上传所选图片 uploadPicture.uploadimg({ // 传图同时携带的参数 url: app.globalData.url + 'my/images/album', path: _this.data.uploadImages, name: 'img', date: Date.now(), }, _this) }, demo:function(){ this.onShow(); }, // 取消事件 // m_cancel:function(){ // wx.navigateTo({ // url: '/pages/personal_core/personaldata/personaldata' // }) // // wx.showModal({ // // title: '提示', // // content: '放弃对资料的修改?', // // success(res) { // // if (res.confirm) { // // wx.navigateTo({ // // url: '/pages/personal_core/personaldata/personaldata' // // }) // // } else if (res.cancel) { // // // console.log('用户点击取消') // // } // // } // // }) // }, })