Vue.js集成Socket.io

Socket.IO简介

Socket.IO 是一个面向实时 web 应用的 JavaScript 库。它使得服务器和客户端之间实时双向的通信成为可能。他有两个部分:在浏览器中运行的客户端库,和一个面向Node.js的服务端库。两者有着几乎一样的API。像Node.js一样,它也是事件驱动的.

Socket.IO 主要使用WebSocket协议。但是如果需要的话,Socket.io可以回退到几种其它方法,例如Adobe Flash Sockets,JSONP拉取,或是传统的AJAX拉取,[2]并且在同时提供完全相同的接口。尽管它可以被用作WebSocket的包装库,它还是提供了许多其它功能,比如广播至多个套接字,存储与不同客户有关的数据,和异步IO操作。

Vue.js集成Socket.IO

  1. 安装socket.io-client
    1
    npm install --save socket.io-client
  2. 在src/main.js中载入socket.io-client
    1
    2
    3
    import io from 'socket.io-client'
    const socket = io(process.env.BASE_API)
    Object.defineProperty(Vue.prototype, '$socket', { value: socket })
  3. 在Vuejs组件中使用socket.io-client
    1
    this.$socket.on('event',function(e){})
    参考链接

  1. https://zh.wikipedia.org/wiki/Socket.IO, by Wikipedia
  2. https://socket.io/get-started/chat/, by socket.io