suggestion.js 5.7 KB
// pages/my/suggestion/suggestion.js
const app = getApp();
const qiniuUploader = require("../../../utils/qiniuUploader");
Page({

    /**
     * 页面的初始数据
     */
    data: {
        test: '',
        length: 0,
        imgBox: [],
        img_urls: [],
        imgURL: [],
        imageURL: '',
        imgUrls: [],
        imgStr: ''
    },
    //返回按钮
    get_back() {
        wx.navigateBack({})
    },
    //限制字数
    limit(e) {
        let value = e.detail.value;
        var length = parseInt(value.length);
        this.setData({
            length: length,
            test: value
        });
    },
    //点击增加图片
    changePhoto: function () {
        var that = this;
        var img_arr = []
        // 选择图片 
        wx.chooseImage({
            count: 9,
            sizeType: ['original', 'compressed'],
            sourceType: ['album', 'camera'],
            success: function (res) {
                const filePath = res.tempFilePaths;
                // var filePath = res.tempFilePaths[0];
                img_arr = filePath
                let arr = [];
                img_arr = that.data.imgBox.concat(img_arr)
                that.setData({
                    imgBox: img_arr
                });
                // tempFilePath可以作为img标签的src属性显示图片
                // console.log(res);
                let successUp = 0; //成功个数
                let failUp = 0; //失败个数
                let i = 0; //第几个
                // let tempFilePaths = res.tempFilePaths //总文件
                let length = res.tempFilePaths.length //总共个数
                that.uploadAllfile(filePath, successUp, failUp, i, length);
            }
        })
    },

    // 上传图片至七牛云
    uploadAllfile(filePaths, successUp, failUp, i, length) {
        let that = this;
        qiniuUploader.upload(filePaths[i], (res) => {
            var img_urls = that.data.imgUrls;
            console.log(res)
            let aa = 'http://qiniu.himrhi.com/' + res.key
            img_urls.push(aa);
            let imgStr = img_urls.join(',')
            that.setData({
                imageURL: res.imageURL,
                key: imgStr,
                imgUrls: img_urls
            });
        }, (error) => {
            console.log('error: ' + error);
        }, {
                region: 'ECN',
                domain: 'qiniu.himrhi.com',
                uptokenURL: 'http://www.himrhi.com/api/wxapp/public/getQiniuToken',
                uptokenFunc: function () {
                    return 'JMgHPK8vEdZfUfxZIW8qIsyucRCZeTZ4aqHLWsjI:9VjchzcKJTa9uqK_0MWELzc4_zg=:eyJzY29wZSI6ImhpLWZyZXNoIiwiZGVhZGxpbmUiOjE1NjA3MzU3ODF9';
                }
            }, (res) => {
                console.log('上传进度', res.progress)
                console.log('已经上传的数据长度', res.totalBytesSent)
                console.log('预期需要上传的数据总长度', res.totalBytesExpectedToSend)
            }, () => {
                // 取消上传
            }, () => {
                // `before` 上传前执行的操作
            }, (err) => {
                // `complete` 上传接受后执行的操作(无论成功还是失败都执行)
                i++;
                // let img = that.data.img
                if (i == length) {
                    // console.log('总共' + successUp + '张上传成功,' + failUp + '张上传失败!');
                } else { //递归调用uploadDIY函数
                    that.uploadAllfile(filePaths, successUp, failUp, i, length);
                }
            });

    },
    //点击删除图片
    deleteImg(e) {
        let val = e.currentTarget.dataset.index
        let imgUrls = this.data.imgUrls
        let imgBox = this.data.imgBox
        let indexs = imgBox.indexOf(val)
        imgUrls.splice(indexs, 1)
        imgBox.splice(indexs, 1)
        this.setData({
            imgUrls: imgUrls,
            imgBox: imgBox
        })
    },
    //点击提交
    submitProblem() {
        let url = '/wxapp/user/setGuestBook'
        if (this.data.test == '') {
            wx.showToast({
                title: '请填写内容',
                icon: 'none'
            })
            return
        }

        if (this.data.key == '') {
            wx.showToast({
                title: '请上传图片',
                icon: 'none'
            })
            return
        }
        let params = {
            content: this.data.test,
            img:this.data.key
        }
        app.post(url, params).then(r => {
            if (r.code == 1) {
                wx.showToast({
                    title: '提交成功',
                    icon: 'none',
                    duration: 1000
                })
                wx.switchTab({
                    url: '../my',
                })
            } else {
                wx.showToast({
                    title: r.msg,
                    icon: 'none'
                })
            }
        })
    },

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

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function() {

    },

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

    },

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

    },

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

    },

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

    },

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

    },

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

    }
})