欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue2封裝webSocket的實(shí)現(xiàn)(開箱即用)

 更新時(shí)間:2023年08月09日 10:47:05   作者:qq_2524963996  
在Vue2中,可以使用WebSocket實(shí)時(shí)通信,本文主要介紹了vue2封裝webSocket的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

第一步:

   下載 webSocket 

npm install vue-native-websocket --save

第二步:

  需要在 main.js 中 引入

import websocket from 'vue-native-websocket';
Vue.use(websocket, '', {
    connectManually: true, // 手動連接
    format: 'json', // json格式
    reconnection: true, // 是否自動重連
    reconnectionAttempts: 5, // 自動重連次數(shù)
    reconnectionDelay: 2000, // 重連間隔時(shí)間
});

第三步:

封裝相關(guān)的連接和斷開

 相關(guān)代碼!?。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。?!

const socketService = {
    socket: null,
    init(username) {
        if (typeof WebSocket === "undefined") {
            alert("您的瀏覽器不支持socket");
        } else {
// ws://10.244.11.117:8089/dashboard/websocket/
            let path = "你的ws WebSocket 地址" + username; // 請求路徑
            this.socket = new WebSocket(path);
            this.socket.onopen = this.open.bind(this);
            this.socket.onerror = this.error.bind(this);
            this.socket.onmessage = this.getMessage.bind(this);
        }
    },
    open() {
        console.log("socket連接成功");
    },
    error() {
        console.log("連接錯(cuò)誤");
    },
    getMessage(msg) {
        return new Promise((resolve, reject) => {
            this.socket.onmessage = (msg) => {
                console.log(msg.data);
                // 利用promise 返回出去結(jié)果
                if (msg.data != '連接成功' && JSON.parse(msg.data)) {
                    const data = JSON.parse(msg.data);
                    resolve(data); // 將數(shù)據(jù)傳遞給調(diào)用者
                }
                // this.scrollInstance.refresh(); // 手動刷新滾動效果
            };
        });
        // this.scrollInstance.refresh(); // 手動刷新滾動效果
    },
    send(params) {
        if (this.socket) {
            this.socket.send(params);
        }
    },
    close() {
        console.log("socket已經(jīng)關(guān)閉");
    }
};
//最后導(dǎo)出
export default socketService;

第四步: 

引入使用

//路徑是自己的啊
import socketService from "../sokect/index";

 mounted() {
      // 調(diào)用
     this.startSocket();
  },
 methods: {
    async startSocket() {
      // 這里是 username  
      socketService.init("warning-all");
      try {
        const msg = await socketService.getMessage();
          //打印出來 服務(wù)器給我的信息
         console.error(JSON.parse(msg.data) );
      } catch (error) {
        console.error("Error receiving message:", error);
      }
    },
  }
 

到這步接收信息已經(jīng)OK了(記得和后端配合)

后續(xù)還有 給服務(wù)器發(fā)送信息 等.......正在開發(fā)中....... 謝謝

到此這篇關(guān)于vue2封裝webSocket的實(shí)現(xiàn)(開箱即用)的文章就介紹到這了,更多相關(guān)vue封裝webSocket內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解vue?cli中如何使用自定義的組件

    詳解vue?cli中如何使用自定義的組件

    Vue?CLI是一個(gè)強(qiáng)大的開發(fā)工具,可用于快速搭建Vue.js項(xiàng)目,在Vue?CLI中使用自定義組件是構(gòu)建交互式和模塊化Web應(yīng)用的重要一環(huán),下面我們就來看看vue?cli中如何使用自定義的組件吧
    2023-11-11
  • Vue中如何設(shè)置全局的cookie對象

    Vue中如何設(shè)置全局的cookie對象

    這篇文章主要介紹了Vue中如何設(shè)置全局的cookie對象,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • vue 在服務(wù)器端直接修改請求的接口地址

    vue 在服務(wù)器端直接修改請求的接口地址

    這篇文章主要介紹了vue 在服務(wù)器端直接修改請求的接口地址的方法,幫助大家更好的理解和使用vue,感興趣的朋友可以了解下
    2020-12-12
  • vue項(xiàng)目是如何運(yùn)行起來的

    vue項(xiàng)目是如何運(yùn)行起來的

    這篇文章主要介紹了vue項(xiàng)目是如何運(yùn)行起來的,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • 詳解Vue中的自定義指令

    詳解Vue中的自定義指令

    這篇文章主要介紹了Vue中的自定義指令的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)vue框架,感興趣的朋友可以了解下
    2020-12-12
  • vue cli實(shí)現(xiàn)項(xiàng)目登陸頁面流程詳解

    vue cli實(shí)現(xiàn)項(xiàng)目登陸頁面流程詳解

    CLI是一個(gè)全局安裝的npm包,提供了終端里的vue命令。它可以通過vue create快速搭建一個(gè)新項(xiàng)目,或者直接通過vue serve構(gòu)建新想法的原型。你也可以通過vue ui通過一套圖形化界面管理你的所有項(xiàng)目
    2022-10-10
  • vue 動態(tài)生成拓?fù)鋱D的示例

    vue 動態(tài)生成拓?fù)鋱D的示例

    這篇文章主要介紹了vue 動態(tài)生成拓?fù)鋱D的示例,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2021-01-01
  • vue實(shí)現(xiàn)選項(xiàng)卡小案例

    vue實(shí)現(xiàn)選項(xiàng)卡小案例

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)選項(xiàng)卡小案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue3時(shí)間插件之Moment.js使用教程

    vue3時(shí)間插件之Moment.js使用教程

    這篇文章主要給大家介紹了關(guān)于vue3時(shí)間插件之Moment.js使用的相關(guān)資料,需要的朋友可以參考下
    2023-09-09
  • Vue 實(shí)現(xiàn)監(jiān)聽窗口關(guān)閉事件,并在窗口關(guān)閉前發(fā)送請求

    Vue 實(shí)現(xiàn)監(jiān)聽窗口關(guān)閉事件,并在窗口關(guān)閉前發(fā)送請求

    這篇文章主要介紹了Vue 實(shí)現(xiàn)監(jiān)聽窗口關(guān)閉事件,并在窗口關(guān)閉前發(fā)送請求,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09

最新評論