React+Nodejs+Socket+Webpack版你画我猜

jotto-testing-project:为使用React构建的简单猜字游戏项目编写测试 Create React App入门 该项目是通过引导的。 可用脚本 在项目目录中,可以运行: npm start 在开发模式下运行应用程序。 打开在浏览器中查看它。 如果您进行编辑,则页面将重新加载。 您还将在控制台中看到任何棉绒错误。 npm test 在交互式监视模式下启动测试运行器。 有关更多信息,请参见关于的部分。 npm run build 构建生产到应用程序build文件夹。 它在生产模式下正确捆绑了React,并优化了构建以获得最佳性能。 生成被最小化,并且文件名包括哈希值。 您的应用已准备好进行部署! 有关更多信息,请参见关于的部分。 npm run eject 注意:这是单向操作。 eject ,您将无法返回! 如果您对构建工具和配置选择不满意,则可以随时eject 。 此命令将从您的项目中删除单个生成依赖项。 相反,它将所有配置文件和传递依赖项(we 立即下载

React版我画你猜

效果预览

之前有看到过一个Vue版本的 我画你猜 然后用 React 也做了一个。技术栈:React + Nodejs + Socket.io + Webpack + Less

先上传送门Github,你要是敢给我Star!!!我就敢接受!!有啥问题可以在下面留言或者github issue一起进步

主要注意下面几点:

1.Socket.io在express中的问题

具体可以参考官方,Socket.io;

2.Socket.io-client

index.html中,我在开头引入了./node_modules/socket.io-client/socket.io.js,如果路径变更记得修改,主要是出于对socket.io的不熟悉,不知道怎么样在react中通过import方式去引入,有好的做法欢迎提出。

3.其他

写在最后,还是那句,第1次接触Websocket,不知道socket.io有没有双向发送消息的机制,所以在server.js中你会看到来来回回了好几次。

io.on('connection', function(socket) {
    //接收path
    socket.on('drawPath', function(data) {
        socket.broadcast.emit('showPath', data);
    });

    socket.on('submit', function(keyword) {
        var bingo = 0;
        if (KEYWORD.toLocaleLowerCase() == keyword.toLocaleLowerCase()) {
            bingo = 1;
        }
        socket.emit('answer', {
            bingo
        });
    });

    socket.on('message', function(message){
        if(message == 'getKeyWord'){
            KEYWORD = keyword[Math.floor(Math.random() * keyword.length)];
            socket.emit('keyword', KEYWORD);
        }else if(message == 'clear'){
            socket.emit('showBoardClearArea');
        }
    });

    socket.on('disconnect', function() {});
});

写完之后没有整理,比较乱。就是想大概实现一下,有兴趣的自己看吧!做了亏心事背景要灰一点。。。。

Installation

git clone https://github.com/zhoulijie/draw-something.git

Run

//安装依赖
npm install
//run
npm start
draw-something:你画我猜(draw something)是一个全端采用TypeScript编写的游戏程序 你画我猜(画点东西) 你画我猜(画东西)是一个全端采用TypeScript编写的游戏程序,前端使用React实现,Websocket作为前一次通信的手段。 技术栈 打字稿 React 材料UI NodeJS,Websocket 去做 *表示正在做 核心功能,正常使用 断线重连,游戏状态恢复 房间聊天室 对翻译进行分类,创建房间时候替代特定类别的翻译 注册,登录 前端 切换成rem布局,做移动端适配 路由 初步加载 用户状态(是否离线,多少分,谁是房主,该谁画画了)标识 对高频率操作,使用节流函数进行优化 根据手机屏幕大小智能缩放Canvas画布,同时保证每个人看到的画布都是完整的 使用Suspense,Webpack Prefetch进行代码分割,懒加载应用 作画时,禁止浏览器拖动刷新 *完成字符串提示,并根据类型不同,应用不同的样式 保存画作到LocalStorage,并可以查看历史画 立即下载

相关推荐

HTML5 Canvas仿你画我猜画布涂鸦代码.zip

HTML5 Canvas仿你画我猜画布涂鸦代码。HTML5是构建Web内容的一种语言描述方式。HTML5是互联网的下一代标准,是构建以及呈现互联网内容的一种语言方式.被认为是互联网的核心技术之一。

QT点名器与你画我猜小项目

别小看任何人,越不起眼的人往往会做些让人想不到的事。你画我猜你来比划我来猜规则:一局游戏180s,答对得分+1,题目数+1;答错题目+1,不加分;显示得分。

k猿的博客 438

你画我猜基于NodeJS的框架Express以及socketio

你画我猜 基于NodeJS的框架Express以及socket.io

《你来画,我来猜》游戏简单实现(html、css、jquery)

本文主要采用 `css html jquery` 实现《你来画,我来猜》简单小游戏,运用了 `css` 的基本常用样式,`html`基本标签,`jquery` 的部分语法和部分知识。主要是实现了 `css html jquery` 三者的紧密结合!

一个很懒的人 1223

你画我猜Vue20Websocket

你画我猜 Vue2.0 Websocket

你画我猜辅助

功能: 模拟鼠标,绘制圆、直线、bmp、jpg图片,并带有简单的图片处理功能,直接使用热键绘图,使用比较方便。 图片处理使用到的算法: 图片灰度过滤、Zhang细化算法。 使用方法: 1.画直线 alt+1确定起点,alt+2确定终点,ctrl+1开始绘图, 2.画圆 alt+1确定圆心,alt+2确定边框任意一点,ctrl+2开始绘图 3.画已有图片(经常给MM截图画肖像~) alt+3或者直接点“选择图片”按钮,选择bmp或者jpg图片,alt+1确定图片左上角,alt+4开始绘图 确定图片左上角可在选择图片之前,选择图片后可先简单处理下图片后再绘图,打包的源码里面带有兔斯基的简笔画,觉得有趣可以在系统画板里画画。 版本更新: 之前有过个版本是用鼠标一个点一个点地描图,速度不行,而且flash传递鼠标绘图过程太缓慢,规定时间内画不完图,现在这个版本可以连笔画画了。

猜画小歌小程序辅助工具

猜画小歌小程序辅助工具

MMKJSH的博客 156

告别ROS1!在Ubuntu 22.04上为VINS-Fusion适配ROS2 Humble的完整踩坑记录

本文详细记录了在Ubuntu 22.04上将VINS-Fusion从ROS1迁移到ROS2 Humble的完整过程,包括环境搭建、依赖管理、核心代码适配及性能优化。通过实战案例和调试技巧,帮助开发者高效解决迁移过程中的常见问题,提升系统稳定性和性能。

weixin_42628688的博客 280

canvas之你画我猜

效果图: 知识点:(更多) Canvas.getContext(‘2d’) // 3d webGL ctx.moveTo(x,y) ctx.lineTo(x,y) // 从当前的点绘制到x,y ctx.stroke() // 描边 ctx.fill() // 填充 ctx.strokeStyle() // 设置或返回用于笔触的颜色、渐变或模式 ctx.closePath() // 结束绘制子...

callmeCassie的博客 1920

ArcGISPro小白必看:5分钟搞定3D地形图制作(附免费数据源)

本文为ArcGISPro初学者提供5步制作专业3D地形图的完整指南,涵盖免费数据获取、项目初始化、数据预处理、3D场景构建和成果输出等关键步骤。特别推荐使用NASA的SRTM高程数据和吉林一号卫星影像,帮助用户快速掌握3D地形图制作技巧,适用于教学演示和科研分析。

weixin_28314575的博客 239

Argoverse2数据集保姆级导入教程:从下载到预处理全流程解析

本文详细解析了Argoverse2数据集的完整导入流程,从环境配置、数据下载到预处理和高效加载策略。作为自动驾驶领域的标杆数据集,Argoverse2提供多模态传感器数据和高精地图信息,帮助研究者快速搭建数据处理流水线。文章包含实用代码示例和性能优化技巧,特别适合自动驾驶算法开发者参考。

weixin_29035405的博客 335

【招聘App】—— React/Nodejs/MongoDB全栈项目:socket.io&聊天实现

前言:最近在学习Redux+react+Router+Nodejs全栈开发高级课程,这里对实践过程作个记录,方便自己和大家翻阅。最终成果github地址:https://github.com/66Web/react-antd-zhaoping,欢迎star。 一、Socket.io基础知识 基于事件的实时双向通信库 基于websocket协议 前后端通...

weixin_30902675的博客 157

如何点亮一颗sensor

要点亮一个sensor需要从,时钟、sensorI2C,供电,reset脚,mipi的配置几个方面一一确认。 reset脚拉高 给sensor的时钟有没有。(目前用到的常为24MHZ) 供电 查看sensor的数据手册,看有几个电源,用示波器量一下是否为手册规定的电压 比如:DVDD 数字电压: AVDD模拟电压 DOVDD芯片引脚出来的电压等为多少。 sensor的I2C能否抓到 将I2C的口对应上,用示波器量取i2c的波形。 检查有应答并且数据正确。读写地址是否正...

weixin_40787463的博客 3646

Ubuntu 18.04上Django+React客户管理系统实战部署

Web全栈开发中,前后端分离架构是提升交互体验与系统可维护性的基础范式。其核心原理在于服务端专注数据建模、API契约与安全管控,前端聚焦状态管理、动态渲染与用户响应。该模式显著提升高并发场景下的页面流畅度与操作实时性,广泛应用于CRM、ERP及内部管理平台等B2B业务系统。在老旧硬件或受限运维环境中(如仅支持Python 3.6的Ubuntu 18.04),技术选型需兼顾兼容性与工程稳定性:Django REST Framework提供开箱即用的权限、过滤与序列化能力,React 17.x凭借轻量Hooks

csxc65837的博客 344

CLCD土地覆盖数据在ArcGIS中的实战应用:从导入到空间分析的完整指南

本文详细介绍了CLCD土地覆盖数据在ArcGIS中的实战应用,从数据导入到空间分析的完整流程。涵盖坐标系转换、数据质量检查、土地利用变化检测等核心技术,并分享城市扩张模拟和跨数据集融合等高级应用技巧,帮助研究者高效利用这一权威数据集进行环境监测和城市规划。

weixin_29292535的博客 590

nvidia系列教程-AGX-Orin usb3.0接口调试

NVIDIA Jetson AGX Orin 是一款高性能的嵌入式计算平台,适用于 AI 推理、机器人、自动驾驶等应用场景。本文将介绍如何对 AGX Orin 平台上的 USB 3.0 接口进行调试,包括硬件检查、软件配置以及常见问题的排查。本文主要介绍在AGX-Orin平台开启两个usb3.0口的方法。通过以上步骤,您可以有效地调试和优化 NVIDIA Jetson AGX Orin 上的 USB 3.0 接口。

flypig has a dream! 1502

前端开发者收集必备,总有你用到的

框架官网 git官网 npm官网 React官网 Redux官网 React Router Vue官网 NodeJS官网 uni-app DvaJS jQuery官网 jQuery API中文文档 ZeptoJS官网 cheerioJS安装地址 RequireJS官网 力扣JS题库 ES6入门(阮一峰大佬的) babel(将ES6代码转为ES5代码) 处理时间与日期的JS库 Lodash 你可能不...

禅思院 2336

上午题目复习ing

无线局域网,11b是常用的,2.4ghz,后来改进5ghz,有些字段可以工作在5g的字段802.11/11a/1h/11n,,,,,11b和11g还在2.4ghz工作。数据链路层 传输服务,数据链路维护,差错控制,arp ip到mac,rarp反过来,token ring,x.25,atm,ethernet,蓝牙10m,简化因特网,分散式网,快调频,短包,点对点,点多多点,2.4ghz,最高速率1mb/s。gsm:是时分多址,900m-1800m,微蜂窝是市区,微微风是室内,伞是盲点,

weixin_47120900的博客 893

react + node 前后端同时开发的项目(交友聊天的H5)- (附前后端源码)

一、项目介绍: 此项目为一个前后台分离的交友的SPA,包括前端应用和后端应用。主要页面有:注册、登录、信息完善、用户列表、聊天、个人中心等 二、技术栈: 前端技术栈:React全家桶 + ES6 + Webpack + axios + socket.io + Cookie + antd- mobile等技术 后端技术栈:Node + express + mongodb + socketIO等技术 三。项目效果展示: 帅哥用户的展示的美女列表: 美女页面和大神几乎一样,只是展示的帅哥列表

码上登堂的博客 1376

uniapp [全端兼容] - 实现集成配置百度语音识别转文字,长按或开启录音并将录音文件实时转换为文字,百度智能云API实现上传录音文件并转换成文字案例(苹果安卓App、微信小程序、移动端H5网页)

uniapp对接百度智能云语音识别,uniapp中实现语音识别(app+小程序),百度语音识别录音转文字_百度智能云,uniapp使用百度语音识别语音转文字,uniapp小程序调用百度语音识别,uni-app 百度语音识别文字并展示功能,uniapp配置自定义界面百度语音识别转文字和原生使用方式,uniapp使用百度语音,uni-app语音转文字功能,使用UniApp技术实现录音并将录音转换为文字,uniapp如何实现语音输入功能功能,Uniapp集成百度智能云API实现录音转文字详细教程完整示例代码dem

🏆 前端领域优质创作者 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

从Replit编程马拉松获奖项目学习全栈开发与实时协作技术

实时协作应用开发是现代Web开发中的重要领域,其核心原理依赖于WebSocket等实时通信协议与冲突解决算法(如CRDT)。这项技术能极大提升多用户协同编辑的体验,具有很高的技术价值,广泛应用于在线文档、代码协作、设计工具等场景。本文以Replit平台上的编程马拉松获奖项目为切入点,深入解析如何利用Socket.IO、Yjs等技术栈,结合React、Node.js等主流框架,构建高完成度的全栈应用。通过解构虚拟项目“CodeCanvas”的实现,文章详细阐述了从技术选型、架构设计到部署上线的完整工程实践,为

weixin_30399155的博客 487

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

一些基于React、Vue、Node.js、MongoDB技术栈的实践项目

刚学vue和react时,利用业余时间写的关于这两个框架的训练,都相对简单,有的结合了一点简单的node.js以及mongoDB的使用,拿出来分享,抛砖引玉 React + Node.js + MongoDB实时聊天WebApp (react_recruiment_webapp) React移动端省市县级联选择器 (react_ca...

weixin_33748818的博客 273

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

从0到1构建fullstack-javascript-architecture项目:初学者的完整路线图 [特殊字符]

想要快速掌握全栈JavaScript开发吗?fullstack-javascript-architecture项目为你提供了一个完整的解决方案!这个开源项目为构建现代化的全栈JavaScript应用提供了一个精心设计的架构模板,包含了从落地页到移动应用的所有组件。无论你是初学者还是有经验的开发者,这个项目都能帮助你快速启动下一个SaaS产品、企业应用或个人项目。 ## 为什么选择全栈JavaSc

gitblog_00245的博客 595

Vue+Node.js构建二手交易平台全栈开发指南

现代Web开发中,前后端分离架构已成为主流技术范式。Vue.js作为渐进式前端框架,通过响应式数据绑定和组件化体系显著提升开发效率;Node.js则凭借事件驱动和非阻塞I/O模型,成为处理高并发请求的理想后端选择。这种技术组合特别适合电商类应用开发,能有效应对商品展示、实时通讯等典型场景。以二手交易平台为例,采用Vue+ElementUI可实现快速搭建管理后台,配合Node.js+Express处理业务逻辑,结合Socket.io实现即时通讯功能。通过Redis缓存和懒加载等优化手段,系统可稳定支撑3000

weixin_33922670的博客 369

【面试题】综合1

1、prototype和__proto__的关系是什么? 2、meta viewport原理是什么? 3、域名收敛是什么? 4、float和display:inline-block的区别是什么? 5、前端优化策略列举 6、首屏、白屏时间如何计算? 7、解释一下闭包 8、解释一下作用域链 9、ajax如何实现,readySta...

weixin_30590285的博客 166

Node.js 安装配置全攻略:从零搭建开发环境到工具链实践

JavaScript 运行时环境是现代 Web 开发的核心基础,它使得 JavaScript 能够脱离浏览器在服务器端执行,实现了前后端语言的统一。其底层基于 Chrome V8 引擎,采用事件驱动和非阻塞 I/O 模型,从而在处理高并发、I/O 密集型应用时展现出高性能优势。这一技术为构建 Web 服务器、实现前端工程化以及开发命令行工具提供了坚实基础,具有极高的技术价值。在实际应用中,无论是开发 RESTful API、使用前端框架,还是搭建自动化构建流程,一个配置正确且稳定的运行环境都是首要前提。本文

weixin_34112181的博客 839
上一篇: nodejs之Express + Passport实现登陆认证
jiestyle21
博客等级 码龄17年 36粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值