zoukankan      html  css  js  c++  java
  • Vue-Socket.io

    github地址:https://github.com/MetinSeylan/Vue-Socket.io

    安装:

    npm install vue-socket.io -S

    注册:

    import Vue from 'vue'
    import VueSocketio from 'vue-socket.io'
    
    Vue.use(VueSocketio, 'http://socketserver.com:1923')

    实例应用:

    var vm = new Vue({
      sockets:{ //将(socket.on)绑定事件放在sockets中
        connect: function(){
          console.log('socket connected')
        },
        customEmit: function(val){
          console.log('this method was fired by the socket server. eg: io.emit("customEmit", data)')
        }
      },
      methods: {
        clickButton: function(val){
            // $socket is socket.io-client instance
            this.$socket.emit('emit_method', val);
        }
      }
    })

    创建一个新的监听器:

    this.$options.sockets.event_name = (data) => {
        console.log(data)
    }

    删除监听器:

    delete this.$options.sockets.event_name;

    触发服务端事件:

    this.$socket.emit('event_name', msg1,msg2,...);

    配合VUEX使用:

    import Vue from 'vue'
    import Vuex from 'vuex'
    
    Vue.use(Vuex);
    
    export default new Vuex.Store({
        state: {
            connect: false,
            message: null
        },
        mutations:{
            SOCKET_CONNECT: (state,  status ) => {
                state.connect = true;
            },
            SOCKET_USER_MESSAGE: (state,  message) => {
                state.message = message;
            }
        },
        actions: {
            otherAction: (context, type) => {
                return true;
            },
            socket_userMessage: (context, message) => {
                context.dispatch('newMessage', message);
                context.commit('NEW_MESSAGE_RECEIVED', message);
                if (message.is_important) {
                    context.dispatch('alertImportantMessage', message);
                }
                ...
            }
        }
    })
  • 相关阅读:
    HTML快速复习
    jQueryAjax
    jQuery工具类函数
    jQuery常用插件
    jQuery动画
    CodeBlock 使用TextOut出错
    Java数组与vector互转
    C++字符串常量
    Android 开发必备
    Java 修改Windows注册表,以实现开机自启动应用程序。
  • 原文地址:https://www.cnblogs.com/fanlinqiang/p/7816764.html
Copyright © 2011-2022 走看看