国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Vue3封裝全局WebSocket;全局可監(jiān)聽、可發(fā)送、心跳處理等;

這篇具有很好參考價值的文章主要介紹了Vue3封裝全局WebSocket;全局可監(jiān)聽、可發(fā)送、心跳處理等;。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

操作如下

可以在多個頁面多個組件中進(jìn)行監(jiān)聽/發(fā)送 代碼簡介 方便;

首先安裝 tools-javascript 以及 tools-vue3
npm i tools-vue3
npm i tools-javascript 
import { WebSocketBean } from 'tools-vue3' 
export default class WSUtil {
    static ws: WebSocketBean
    static async init() { 
        this.ws = new WebSocketBean({
            url: '你的地址',
            needReconnect: true,
            reconnectGapTime: 3000,
            onerror: () => { // 接收到錯誤
                CEvent.emit('getData','斷開的~消息是從這里來的哦~')
            }, 
            sendSuffix:'',
            messageSuffix: '',
            heartSend: '44444444444~',
            heartGet: '44444444444444444~',
            heartGapTime: 3000,
            onmessage: (data) => { // 接收到消息
                CEvent.emit('getData',sp)
            }
        })
        //建立連接
        this.ws.start()
    }
}

根據(jù)你的業(yè)務(wù)需求初始化 ws

// 從你業(yè)務(wù)需求的文件引入該方法后調(diào)用
WSUtil.init()  

在你的任何文件中直接調(diào)用即可

	// 監(jiān)聽消息 getData 相當(dāng)于KEY值 與 接收到的消息/錯誤 統(tǒng)一即可
	const listenID = CEvent.on("getData",(data)=>{
		//在onmessage觸發(fā)后,這里應(yīng)該打印test字符串 
		console.log('home1',data)
	})
	// 頁面銷毀記得清除監(jiān)聽器
	onDeactivated(()=>{
        // 銷毀
        CEvent.off(listenID)
	})

附加篇(也可不讀 直接看文檔 )文章來源地址http://www.zghlxwxcb.cn/news/detail-679313.html

 /**
  *發(fā)送數(shù)據(jù)
  * @param data 數(shù)據(jù)對象,Object、Array、String
  */
	WSUtil.send
	
 /**
  * 銷毀需要重發(fā)的數(shù)據(jù)信息
  * @param sendId
  */
  WSUtil.offsend
 /**
  * 關(guān)閉socket,銷毀綁定事件、心跳事件、窗口關(guān)閉事件,修改狀態(tài)為已關(guān)閉
  */
  WSUtil.close
  
// ws連接狀態(tài)
export enum WebSocketStatusEnum {
    /**
     * 創(chuàng)建中
     */
    load,
    /**
     * 已連接
     */
    open,
    /**
     * 已關(guān)閉
     */
    close
}

到了這里,關(guān)于Vue3封裝全局WebSocket;全局可監(jiān)聽、可發(fā)送、心跳處理等;的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • vue3+vite的axios的封裝與全局使用

    vue3+vite的axios的封裝與全局使用

    1.安裝axios 使用npm 或 yarn 安裝axios到項目中 // 使用pnpm 安裝? ?pnpm install axios // 使用npm 安裝? ?npm install axios // 使用yarn 安裝? yarn add axios axios是一個基于Promise的HTTP請求庫,支持Promise API、可以攔截請求和響應(yīng)、可以轉(zhuǎn)換請求和響應(yīng)數(shù)據(jù)、支持取消請求、可以自動轉(zhuǎn)換JSON數(shù)據(jù)

    2024年02月02日
    瀏覽(234)
  • 基于Vue3封裝一個好用的Websocket

    在Vue3中使用Websocket可以讓我們輕松地實現(xiàn)實時數(shù)據(jù)傳輸。為了方便使用,我們可以封裝一個好用的Websocket類。 首先我們需要安裝 ws 庫來處理Websocket連接,使用以下命令進(jìn)行安裝: 我們可以新建一個 websocket.js 文件,在其中定義一個 Websocket 類,代碼如下: 以上代碼中,我們

    2024年02月04日
    瀏覽(18)
  • websocket前端封裝代碼,心跳機(jī)制斷線重連

    websocket前端封裝代碼,心跳機(jī)制斷線重連

    websocket是一種全雙工通信長鏈接,大多用來實現(xiàn)及時通訊,數(shù)據(jù)實時性要求較為高的地方,在websoket未出現(xiàn)的時候前端使用的setInterval輪訓(xùn)進(jìn)行數(shù)據(jù)更新的,在那些對于數(shù)據(jù)實時性要求不高地方我們?nèi)钥梢允褂?輪訓(xùn)。 (1)建立在 TCP 協(xié)議之上,服務(wù)器端的實現(xiàn)比較容易。 (

    2024年02月11日
    瀏覽(32)
  • Flutter:WebSocket封裝-實現(xiàn)心跳、重連機(jī)制

    前言Permalink Flutter簡介 Flutter 是 Google推出并開源的移動應(yīng)用開發(fā)框架,主打跨平臺、高保真、高性能。開發(fā)者可以通過 Dart語言開發(fā) App,一套代碼同時運(yùn)行在 iOS 和 Android平臺。 Flutter提供了豐富的組件、接口,開發(fā)者可以很快地為 Flutter添加 native擴(kuò)展。同時 Flutter還使用 Nat

    2024年02月10日
    瀏覽(34)
  • Vue3+element-ui + TS封裝全局分頁組件

    本文介紹了如何使用Vue3、element-ui和TypeScript封裝一個全局分頁組件。 在開始之前,你需要安裝以下環(huán)境: Vue3 element-ui TypeScript 這個分頁組件提供以下功能: 支持自定義每頁顯示條數(shù) 支持自定義跳轉(zhuǎn)到指定頁碼 支持顯示總頁數(shù)和總條數(shù) 支持自定義樣式 分頁組件結(jié)構(gòu) 分頁組

    2024年02月12日
    瀏覽(24)
  • vue3使用websocket簡易封裝,包含錯誤重連機(jī)制

    vue3使用websocket簡易封裝,包含錯誤重連機(jī)制

    websocket實現(xiàn)的全雙工通信,真真太香了,以下是筆者在使用時,自己封裝的一個簡易js工具。若需要源碼,請移步這里 筆者這里會重連3次,重連的過程給與用戶提示,3次之后會提示用戶手動刷新 這里與后端約定的數(shù)據(jù)返回,加上type作為接口判斷依據(jù),因此這里不一定通用。

    2024年02月11日
    瀏覽(29)
  • ai問答:vue3+pinia+WebSocket 封裝斷線重連(實戰(zhàn))

    把 Socket 實例 掛載到全局 為方便梳理,請忽略 typescript ,一切盡在注釋中 Socket封裝(斷線重連) 這個 WebSocket 類封裝了 WebSocket 的連接、重連、發(fā)送數(shù)據(jù)等方法。 在 connect 方法中,它會連接 WebSocket ,并綁定相關(guān)事件監(jiān)聽。 在 onclose 事件中,它會調(diào)用 reconnect 方法進(jìn)行重連。 recon

    2024年02月03日
    瀏覽(23)
  • vue設(shè)置全局webSocket,并在對應(yīng)頁面接受消息通知處理

    最近項目中有用到了webSocket,然后在收到消息之后需要在不同的頁面進(jìn)行處理。所有就需要在不同的頁面監(jiān)聽并進(jìn)行對應(yīng)的消息處理。 首先,在app.vue中添加socket初始化,并設(shè)置發(fā)送消息,接收消息和心跳檢測的處理。 其中:在接收到消息之后需要自定一個監(jiān)聽事件,來供頁

    2024年02月11日
    瀏覽(22)
  • vue3-pc端生成微信二維碼、掃碼支付監(jiān)聽支付回調(diào)(WebSocket)功能實現(xiàn)

    vue3-pc端生成微信二維碼、掃碼支付監(jiān)聽支付回調(diào)(WebSocket)功能實現(xiàn)

    項目場景:后臺系統(tǒng)中采購訂單列表需要支持微信掃描支付功能,支付成功需要返回到訂單列表。 調(diào)用接口接收后端返回數(shù)據(jù), npm install qrcode?--save 安裝插件,處理返回數(shù)據(jù)生成二維碼。 1. 后端接口返回數(shù)據(jù)如下: 2. 前端代碼如下: 3. 效果圖如下: 生成二維碼功能到這就完

    2024年02月12日
    瀏覽(184)
  • uni-app vue3 封裝socket 兼容微信小程序 釘釘小程序 H5 App 全局唯一

    前端小伙伴使用uni-app開發(fā)長連接通信的時候都會有以下疑問 在網(wǎng)上搜到的封裝socket都沒講怎么全局公用一個呢? 同一個 子協(xié)議或者我我們叫type類型型我想在兩個頁面都接受使用怎么做呢? 目前能搜到的socket 封裝好像都沒講清楚這個東西,或者壓根沒考慮 下面給大家詳細(xì)

    2024年02月13日
    瀏覽(98)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包