socket io與vue-cli的結合使用的示例代碼

這篇文章主要介紹了socket io與vue-cli的結合使用的示例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

關於在vue中使用websocket的簡易例子

使用vue-cli生成一個vue模版

安裝三個依賴:

npm install -s socket.io
npm install -s vue-socket.io
npm install -s socket.io-client

創建一個新的servers:在文件最外層創建 server/app.js文件:

var sever=require('http').createServer();
var io=require('socket.io')(sever)

io.on('connection', function (socket) {
  socket.on('login',function(data){ //接收連接中的login事件
    console.log(data);
    io.emit('loginmsg','你發過來的數據是:'+data) //發送回去 事件名爲loginmsg
   })

})
console.log('socket端口:8000');
sever.listen(8000)

在package.js文件中添加啓動腳本:

script{ "server": "node sever/app.js"}

在mian.js中vue.use():

import VueSocketio from 'vue-socket.io';
import socketio from 'socket.io-client';
Vue.use(VueSocketio, socketio('ws://127.0.0.1:8000'));//與websocket服務端鏈接

在.vue文件中:

<template>
  <div>
    <div> 
      <input type="text" v-model="msg">
      <button @click='Login'>向8000端口發送數據</button>
      {{backdata}}
    </div>

  </div>
</template>
<script>
export default{
  data:function (){
    return {
      msg:"aaaa",
      backdata:'',
    }
  },
  sockets:{ //在此接收又服務器發送過來的數據 ps:注意此處的方法名要與服務器的發送的事件保持一致才能接收到
   connect:function() {      //與ws:127.0.0.1:8000連接後回調
    console.log('連接成功');
   },
   loginmsg:function(value) {
    console.log(value);//監聽login(後端向前端emit login的回調)
    this.backdata=value;
   }
  },
  methods:{
    Login(){
      this.$socket.emit('login',this.msg);
    }
  }
   
 }
</script>

先啓動8000端口 npm run server

然後打開新的命令行 npm run dev 啓動vue模版

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持神馬文庫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章