当前位置: 首页 > news >正文

北京旅游网站排名saas 做网站

北京旅游网站排名,saas 做网站,上海软件外包公司排名,房管局官网appnodejs编写ws服务是非常简单高效的#xff0c;nodejs有众多的实现ws的库#xff0c;如ws,SocketIO等#xff0c;nodejs的事件线程是单线程的#xff0c;所以不要在事件线程内做阻塞性的操作#xff0c;耗时的操作交给工作线程或者子进程操作。 我使用nodejsvue3实现了写了…nodejs编写ws服务是非常简单高效的nodejs有众多的实现ws的库如ws,SocketIO等nodejs的事件线程是单线程的所以不要在事件线程内做阻塞性的操作耗时的操作交给工作线程或者子进程操作。 我使用nodejsvue3实现了写了个简单的聊天室demo 1.nodejs服务端代码 node init初始化项目 安装ts 具体可以看我nodejs 使用ts的文章 安装ws的库 npm install ws npm install types/wsimport {WebSocketServer,WebSocket} from ws;const wss new WebSocketServer( {port:3000});wss.on(connection,(ws){console.info(new connection join,ws);ws.on(message,(data){wss.clients.forEach((client{if (client.readyState WebSocket.OPEN) {client.send(data,{binary:false});}}))console.info(get msg from client,(new String(data)).toString());})});console.log(start success);2. vue3连接客户端 使用游览器自带的WebSocket对象连接ws服务使用ws库的WebSocket对象在游览器运行时会报错存在一定的问题 script setup langts import { onMounted, ref } from vue import { Msg } from /modelconst propsdefineProps{username: string }();const toSendMsg ref();const usernameprops.username;const receiveMsgList refMsg[]([])const ws new WebSocket(ws://localhost:3000);onMounted(() {// WebSocket 服务器的 URLconst wsUrl ws://localhost:3000;// 创建 WebSocket 连接 const ws new WebSocket(wsUrl);// 监听连接成功事件 ws.addEventListener(open, function () {console.log(Connected to WebSocket server);// 发送消息给服务器 });// 监听接收到消息事件 ws.addEventListener(message, function (event) {console.log(Blob content as string:, event.data);receiveMsgList.value.push(JSON.parse(event.data))});// 监听连接关闭事件 ws.addEventListener(close, function () {console.log(Disconnected from WebSocket server); });// 监听连接错误事件 ws.addEventListener(error, function (error) {console.error(WebSocket error:, error); }); })function sendMsg(){const msgInfo new Msg(username,toSendMsg.value)ws.send(JSON.stringify(msgInfo));toSendMsg.value; }/scripttemplateel-col :span6div classchart-out-boxdiv classchart-room-headel-scrollbar height400pxdiv v-for(item, index) in receiveMsgList :keyindexp v-ifitem.username username classscrollbar-demo-item scrollbar-demo-is-own{{item.content}}span{{ :username }}/span/pp v-else classscrollbar-demo-item scrollbar-demo-is-otherspan{{item.username}}:/span{{ item.content }}/p/div/el-scrollbar/divdiv classchart-room-footerel-input v-modeltoSendMsg stylewidth: 240px :rows4 typetextarea placeholderPlease input /el-button typesuccess stylemargin-left:20px clicksendMsg发送/el-button/div/div/el-col/templatestyle langscss scoped .chart-out-box {border: 1px solid blue;height: 400px; }.chart-room-head {height: 70%;border: 1px solid green;; }.chart-room-footer {}.scrollbar-demo-item {display: flex;align-items: center;height: 50px;margin: 10px;text-align: center;border-radius: 4px;background: var(--el-color-primary-light-9);color: var(--el-color-primary); }.scrollbar-demo-is-own {justify-content: right; }.scrollbar-demo-is-other {justify-content: left; }/style 3.演示 4.git代码 https://github.com/haozhi-ly/chatroom-demo
http://www.dnsts.com.cn/news/253876.html

相关文章:

  • 专业网站设计制作百度帐号申请注册
  • 上海的加盟网站建设滁州注册公司流程和费用
  • 网站建设访问人群wordpress 关于我们页面
  • 网站名称如何设置免费建站工具有哪些
  • 淘宝客网站做的好的万江区网站建设公司
  • 外贸网站建设模板下载余姚专业网站建设公司
  • 网站建设推广培训网站项目宣传片
  • 网站开发可以当程序员怎么开网站平台
  • 商城网站 搭建北京 网站 公司
  • 中国网站建设公司百强深圳制作网站建设的企业
  • 长春火车站在哪网站开发培训好学吗
  • 网站工具查询pc官网 和手机网站
  • 网站快速建站seo推广网站有哪
  • 企业品牌网站建设定制开发wordpress数据库链接地址
  • 中山网站建设招聘本地的上海网站建设公
  • 哈尔滨企业建站系统网站开发的流程是怎样的
  • 烟台建设科技网站页面设置
  • 网站关键词之间用什么符号隔开一起做网店吧
  • 做网站是学什么专业wordpress 菜单间隔
  • 齐河县城乡建设局官方网站使用云主机做网站教程
  • 优秀企业展示网站聚名网备案
  • 安徽建站网站自适应网站开发工具
  • 卖水果做哪个网站好行业网站渠道选择和内容运营
  • 做网站备案需要多长时间开启wordpress mu
  • 建设网站需要什么基础学院宣传网站制作
  • iis发布网站的教程live wordpress主题
  • 免费申请二级域名网站优化设计方案
  • 域名展示网站源码建筑公司网站源码
  • 怎么用动图做网站背景网络应用开发
  • 微信做兼职什么网站好wordpress自定义文章模板