Vue-websocket使用
Vue中使用websocket
1.介绍:websocket是一个双向通行工具,解决了原来的http单向通信的弊端,可以让服务器主动向客户端推送数据
// 安装客户端的socket
npm i socket.io-client --save
/*
安装Vue配置socket的工具
注意:需要安装3.0.7版本的包,最新的包会有问题
*/
npm i vue-socket.io@3.0.7 --save
// 在main.js中引入设置
import VueSocketIO from 'vue-socket.io'
import SocketIO from 'socket.io-client'
Vue.use(new VueSocketIO({
// 生产环境需要切换成false
debug: true,
// 连接的后端地址
connection: SocketIO('http://localhost:3000?token=ab'),
// 需要使用vuex的话,需要配置一下
vuex: {
store,
// mutation中定义方法的前缀
mutationPrefix: 'SOCKET_',
// actions中定义方法的前缀
actionPrefix: 'SOCKET_'
}
}))
// 在组件中使用
<script>
export default {
mounted () {
// 像后端触发一个事件函数,像后端传递数据
this.$socket.emit('message', { name: '小美' })
}
/*
接收后端的事件函数传递的参数,在sockets对象中定义事件函数,
包括一些内置的事件方法
*/
sockets: {
// 内置的事件方法
connect () {
console.log('和服务器连接成功调用')
// 是否已经连接到服务器
console.log(this.$socket.connected)
// 是否和服务器断开连接
console.log(this.$socket.disconnected)
// 套接字会话的唯一标识符,在reconnect事件后更
console.log(this.$socket.id)
},
disconnect () {
console.log('和服务器断开连接时调用')
// 手动重新连接
this.$socket.open()
// 断开连接时重新连接,和open一样
this.$socket.connect()
},
reconnecting () {
console.log('尝试重新连接时触发')
},
reconnect_error () {
console.log('重新连接错误时触发')
},
// 服务器端触发的自定义事件
vueMessage (msg) {
console.log(msg)
// 像服务器端发送数据
this.$socket.send('来吧面对疾风吧')
}
}
}
</script>
Vue-websocket使用的更多相关文章
- vue+websocket+express+mongodb实战项目(实时聊天)
继上一个项目用vuejs仿网易云音乐(实现听歌以及搜索功能)后,发现上一个项目单纯用vue的model管理十分混乱,然后我去看了看vuex,打算做一个项目练练手,又不想做一个重复的项目,这次我就放弃颜 ...
- vue+websocket+express+mongodb实战项目(实时聊天)(二)
原项目地址:[ vue+websocket+express+mongodb实战项目(实时聊天)(一)][http://blog.csdn.net/blueblueskyhua/article/deta ...
- Vue+WebSocket+ES6+Canvas 制作「你画我猜」小游戏
Vue+WebSocket+ES6+Canvas 制作「你画我猜」小游戏 转载 来源:jrainlau 链接:https://segmentfault.com/a/1190000005804860 项 ...
- SpringBoot+Vue+WebSocket 实现在线聊天
一.前言 本文将基于 SpringBoot + Vue + WebSocket 实现一个简单的在线聊天功能 页面如下: 在线体验地址:http://www.zhengqingya.com:8101 二 ...
- vue+websocket demo 实例
vue+websocket demo: <!-- vue + websocket连接demo --> <template> <div class="" ...
- vue + websocket 的使用
阳光正好,我们正在努力前行. 一.引言 初始使用websocket ,一开始看文档的时候,觉得很简单,只需要创建websocket实例,然后有几个监听打开连接,监听关闭连接,监听连接异常等方法.但是, ...
- Vue+WebSocket 实现页面实时刷新长连接
最近vue项目要做数据实时刷新,折线图每秒重画一次,数据每0.5秒刷新一次,说白了就是实时刷新,因为数据量较大,用定时器估计页面停留一会就会卡死... 与后台人员讨论过后决定使用h5新增的WebSoc ...
- Vue +WebSocket + WaveSurferJS 实现H5聊天对话交互
引言 在与实现了语音合成.语义分析.机器翻译等算法的后端交互时,页面可以设计成更为人性化.亲切的方式.我们采用类似于聊天对话的实现,效果如下: 智能客服(输入文本,返回引擎处理后的文本结果) 语音合成 ...
- 【土旦】Vue+WebSocket 实现长连接
1.websocket 连接代码 created() { this.initWebsocket() }, methods: { // 初始化websocket initWebsocket() { le ...
- websocket介绍 以及 vue websocket使用案例
1 介绍: https://www.zhihu.com/question/20215561 2 案例: https://www.jianshu.com/p/0d20a032d0ec (坑说明). ht ...
随机推荐
- OpenStack知识点详解
一:云计算 一.起源 1. 云计算这个概念首次在2006年8月的搜索引擎会议上提出,成为了继互联网.计算机后信息时代的又一种革新(互联网第三次革命). 2. 云计算的核心是将资源协调在一起,使 ...
- ATX插件机制-学习学习
添加插件:记录一下 https://testerhome.com/topics/16074 webview操作: https://testerhome.com/topics/12599
- 编辑器、编译器、文件、IDE等常见概念辨析
一.编辑器与编译器 1.编辑器与编译器有什么区别? 简单讲,编译器就是将"一种语言(通常为高级语言)"翻译为"另一种语言(通常为低级语言)"的程序.一个现代编译 ...
- Java中的集合(十五) Iterator 和 ListIterator、Enumeration
Java中的集合(十五) Iterator 和 ListIterator.Enumeration 一.Iterator (一).简介 Iterator 是一个接口,它是集合的迭代器.集合可以通过Ite ...
- Bank4
Account: package banking4; public class Account { private double balance; public Account(double int_ ...
- 01Java核心-冷门知识001-包
1)导入静态方法和静态域 import 可以加上static关键字,导入静态的方法和静态域. 例如: package com.gail.test; import static java.lang.Sy ...
- 个人工具,编辑器visual studio code
个人收集的使用方法:简化版 主要基于基础web前端开发,visual studio code教程——基础使用.扩展插件安装使用 下载地址: https://visualstudio.microsoft ...
- WebSocket是什么,有什么作用和特点?
WebSocket是一种在单个TCP连接上进行全双工通信的协议. Websocket是基于HTTP协议的,或者说借用了HTTP的协议来完成一部分握手.具有持久化的特性 特点: 保持连接状态.与HTTP ...
- SpringBoot返回html页面
一般Controller返回数据或页面,今天谈一下返回页面的场景. 一.不使用template 1. controller中定义对应的访问路由及返回的页面(使用Controller,不要使用RestC ...
- 【javascript】京东商品浏览放大镜效果
1.onclick点击小图可以切换图片 2.onmouseover显示黄色div与放大图片的div 3.onmouseout,2的内容消失 4.onmousemove黄色div跟随鼠标移到,但是不能超 ...