(精华2020年5月21日更新) vue实战篇 实时通信websocket的封装结合vue的使用

本文详细介绍了如何在Vue.js项目中封装WebSocket以便实现页面的实时通信功能,结合具体的Vue组件,展示了WebSocket的创建、连接、消息发送与接收的完整流程。
摘要由CSDN通过智能技术生成
import webSocket from '../webSocket.js';
export default {
   
  isIosAndroid() {
   
    var u = navigator.userAgent;
    var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端
      isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
      isChrome = u.indexOf('Safari'); //浏览器端
    return {
   
      isAndroid,
      isiOS,
      isChrome
    }
  },
  websocktSend(paramsObj) {
   
    // this --> store
    //这个是用来向后端websocket发送信息,发送之前需要先判断是否还处理链接状态
    var userId = localStorage.getItem('userId');
    var sendMsg = () => {
   
      window.socketServer.send(JSON.stringify(paramsObj)); //给后端发送信息
    }
    if (window.socketServer.readyState == 1) {
   
      sendMsg();
    } else {
   
      // 这里的this是$store,传递进来的
      // 这个this你并不知道
      webSocket.call(this, wsconPath[sceneParam] + userId).then(() => {
   
        sendMsg();
      });
    }
  },
  // 时间显示的几分钟、几小时、当天、昨天、前天以及更早的具体时间
  // 2019-12-07 09:58:23
  // JS计算两个日期时间差,天 小时 分 秒格式
  showDiffTime: function (startDate) {
   
    if (!startDate) {
   
      return;
    }
    var startDate = startDate.replace(new RegExp(/-/gm), "/");
    var startDat
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值