当前位置: 首页 > news >正文

山东滨州网站建设公司电商数据分析

山东滨州网站建设公司,电商数据分析,做外贸好的网站有哪些,腾讯专门做数据标注的网站是文章目录 一. 目标二. 前置环境三. websocket通用模板 一. 目标 先有实时数据需要展示. 由于设备量极大且要对设备参数实时记录展示.axios空轮询不太适合. 选择websocket长连接通讯. 使用pinia原因是pinia具备共享数据性质.可以作为消息队列缓存数据,降低渲染压力.同时方便多… 文章目录 一. 目标二. 前置环境三. websocket通用模板 一. 目标 先有实时数据需要展示. 由于设备量极大且要对设备参数实时记录展示.axios空轮询不太适合. 选择websocket长连接通讯. 使用pinia原因是pinia具备共享数据性质.可以作为消息队列缓存数据,降低渲染压力.同时方便多个页面或组件获取websocket数据 二. 前置环境 安装pinia 注册pinia不再详细叙述,自行看官方文档. npm install pinia 三. websocket通用模板 笔者自行整合网络资源,写了一套较为通用的通信模板. 包含 消息队列缓存, 心跳检测, 断线重连.读者可以自行阅读以下代码调整到业务所需.同时也请大家捉虫,笔者会及时修改. import {defineStore} from pinia; import {ref} from vue;// 你可以对 defineStore() 的返回值进行任意命名但最好使用 store 的名字同时以 use 开头且以 Store 结尾。(比如 useUserStoreuseCartStoreuseProductStore) // 第一个参数是你的应用中 Store 的唯一 ID。 export const useWebSocketStore defineStore(resource, {// 其他配置...state: () ({// 这里是你的状态socket: null,messageQueue: [],readyState: 0,socketMessage:1}),getters: {// 这里是你的 gettersSET_SOCKET: (state: any, socket: any) {state.socket socket;},SET_SOCKET_MESSAGE: (state: any, socketMessage: any) {state.socketMessage socketMessage;}},actions: {// 这里是你的 actionsconnectWebSocket() {const PING_INTERVAL 5000; // 心跳间隔单位为毫秒const heartbeatMessage {type:0, msg:ping}; // 心跳消息const heartbeatMessage2 {type:0, msg:pong, data:[在线设备]}; // 心跳消息const HOST_ADDRESS ws://127.0.0.1:7531const socket ref(new WebSocket(HOST_ADDRESS))let checkTask null// 监听连接事件socket.value.onopen () {// 启动心跳检测 确保连接存活 客户端每隔5秒向服务端发送一次心跳消息console.log(heartbeatMessage)checkTask setInterval(() {socket.value.send(JSON.stringify(heartbeatMessage))}, PING_INTERVAL)}// 监听消息事件socket.value.onmessage (event) {console.log(event.data,event2)const message JSON.parse(event.data)if (message.type WebSocket.CONNECTING) {socket.value.send(JSON.stringify(heartbeatMessage2))return} else {console.log(WebSocket消息: , message)this.SET_SOCKET_MESSAGE(message)}}// 监听关闭事件 断线重连socket.value.onclose () {if(this.socket.readyState WebSocket.CLOSED) {this.messageQueue.forEach((message) {this.sendMessage(message)});this.messageQueue []}// 清除心跳计时器checkTask clearInterval(checkTask)// 断线重连setTimeout(() {this.connectWebSocket()},3000)}// 连接错误socket.value.onerror (event) {console.log(WebSocket error:, event)}},// 发送消息方法sendMessage(message: string) {this.socket.send(message)}}})
http://www.dnsts.com.cn/news/242119.html

相关文章:

  • 石家庄门户网站建设上海模板网站建站
  • wordpress站点名称的影响php网站开发技术期末题库
  • 国内经典网站网页搭建代码
  • 苏州外贸网站建设运营会展公司排名
  • 网站制作易捷网络北京建设工程招标信息网
  • 怎么修改网站首页logo布料市场做哪个网站好
  • 网站前端跟后端怎么做app关键词优化
  • 织梦网址导航网站模板宁波网站seo报价
  • 网络营销 网站建设请人做网站安全
  • 宁波网站建设一般多少钱新开传奇手游新服网
  • 怎么做移动网站吗worldpress 建站
  • 找人做网站需要准备什么材料公司门户最新版下载
  • 网站开发外包不给ftp网站建设中数据库
  • 网站简历模板福建省效能建设网站
  • 请描述网站开发的一般流程菏泽网站建设
  • 上海专业网站开发app推广拉新一手渠道代理
  • 河南住房建设部网站虚拟主机怎么使用
  • 站长工具seo综合查询下载安装网站网站建设方案书怎么写
  • 濮阳网站建设在哪里欧阳网站建设
  • 怎样在内网建设一个网站校园互动平台网站建设
  • 门户网站建设保定网站模板建站
  • 网站设置黑白色友情链接做自己的网站
  • 可信网站验证服务证书员工入职 在哪个网站做招工
  • 爱美刻在线制作网站高等学校处网站建设总结
  • 网站开发的五个阶段梧州外贸网站推广设计
  • 律所网站建设wordpress主题分享吧
  • 网站创建流程咖啡网站建设的需求分析
  • wordpress 建网站 vpn长春网站建设模板制作
  • wordpress仿站教学深圳龙华区房价多少一平方
  • 青岛高端网站设计哪家wordpress书籍模板