美文网首页
微信小程序实现聊天功能,带表情,拍照等功能

微信小程序实现聊天功能,带表情,拍照等功能

作者: 潶渔 | 来源:发表于2018-08-30 10:49 被阅读0次

    微信小程序实现聊天功能,带表情,拍照等功能(后端用php的Workerman来实现),想要知道具体怎么实现的加我QQ:1346883814

    部分代码:

    toSend: function (msgType, messageId, msgContent, fileContent, path, duration) {

        let that = this

         let uid = that.data.userId

        let cuid = that.data.currenId

        if (msgType == 'img' || msgType == 'audio'){

          util.common.uploadFile(path, function (res) {

             let msg = '{ "type":"chat", "target":' + uid + ', "from":' + cuid + ',"room_id":1, "msg": { "type":"' + msgType + '", "messageId":"' + messageId + '", "msg":"' + msgContent + '","fileContent":"' + res.data.url + '","path":"' + res.data.url + '","duration":"' + duration + '"}}'

            let msgRecords = { msg: msgContent, filePath: conf.apiImgUrl + res.data.url, msgType: msgType, duration: duration, position: "right" }

            var chatRecords = wx.getStorageSync('chat' + cuid + uid)

            if (chatRecords == "" || chatRecords == undefined) {

                  wx.setStorageSync('chat' + cuid + uid, [msgRecords])

            } else {

                 if (chatRecords.length >= 100) {

                      chatRecords.splice(0, 1);

                }

                chatRecords.push(msgRecords)

                wx.setStorageSync('chat' + cuid + uid, chatRecords)

            }

            that.setData({

              msg: chatRecords

            })

                that.sendSocketMessage(msg)

          })

        }else{

              let msg = '{ "type":"chat", "target":' + uid + ', "from":' + cuid + ',"room_id":1, "msg": { "type":"' + msgType + '", "messageId":"' + messageId + '", "msg":"' + msgContent + '","fileContent":"' + fileContent + '","path":"' + path + '","duration":"' + duration + '"}}'

              let msgRecords = { msg: msgContent, filePath: path, msgType: msgType, duration: duration, position: "right" }

              var chatRecords = wx.getStorageSync('chat' + cuid + uid)

              if (chatRecords == "" || chatRecords == undefined) {

                wx.setStorageSync('chat' + cuid + uid, [msgRecords])

          } else {

                if (chatRecords.length >= 100) {

                      chatRecords.splice(0, 1);

                }

                chatRecords.push(msgRecords)

                wx.setStorageSync('chat' + cuid + uid, chatRecords)

          }

          // console.log(JSON.parse(chatRecords[8]))

              that.setData({

                msg: chatRecords

              })

              that.sendSocketMessage(msg)

        }

      },

    效果图如下:

    相关文章

      网友评论

          本文标题:微信小程序实现聊天功能,带表情,拍照等功能

          本文链接:https://www.haomeiwen.com/subject/hgflbftx.html