在现有Node.js、Express、MongoDB和Socket.io Stack之上添加AngularJS
Adding AngularJS on top of existing Node.js, Express, MongoDB and Socket.io Stack
我已经使用Node.js、Express、MongoDB、Mongoose和Socket.io开发了一段时间的web应用程序。第一版刚刚发布,运行良好。然而,对于第二版,我想完全重新设计UI,并使用AngularJS之类的前端框架。我一直在看(MEAN堆栈),它看起来真的很有希望。在进入太多细节之前,我会尝试解释应用程序的目的和工作原理,希望你稍后能理解我的问题。
我的应用程序是一个流媒体服务,有4个简单的模型:用户、房间、歌曲、播放列表。这些是通过Mongoose中的Schema建模的,并存储在MongoDB数据库中。当用户访问该应用程序时,它通过Node.js和Express(以及Jade作为模板引擎)提供所有HTML。如果用户随后注册,Socket.io会让服务器知道一个用户注册,然后将其保存到数据库中,用户将加入大厅。在这个房间里,用户可以聊天、听音乐等。这就是我一直使用Socket.io的目的,用户自己和我的服务器之间的通信(服务器有时也通过Socket.io提供html)。基本上,Socket.i0和服务器之间的所有消息都很小(聊天消息、房间对象、歌曲对象等)。
我对这种方法很满意,但是,在客户端,代码并没有真正分离。目前有两个JS文件为逻辑服务。一个处理Socket.io事件并操纵dom。另一个是一个普通的JS文件,它做了一些所有的事情。这两个文件现在各大约有5000行。这让我很担心,我想在v2中找到一个解决方案。
所以我一直在研究MEAN堆栈中的AngularJS,以及如何将其合并到我的应用程序中。我的问题是,这能解决我的客户端问题吗?你能建议我努力做到这一点吗?此外,Socket.io与AngularJS的合作情况如何?对我现在所做的事情来说,同时拥有这两个可能有些过头了。你知道其他可能更容易与我当前的环境集成的框架吗?我知道这是一个有点主观的问题,但如果你有任何建议或做或不做,谢谢分享!我非常感谢您的反馈,如果您需要更多信息,我很乐意与您分享!
Jordy
我认为这个真实的例子就足够了:https://github.com/btford/angular-socket-io-seed
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- YUI3 IO实用程序是否可以根据给定的内容类型标头值自动序列化数据
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 如何使用Socket.io将命令从客户端发送到服务器
- Webdriver.io pageObject模式-通过传递参数来定义元素选择器
- Socket.IO未定义变量
- Socket.io on Mozilla Rhino
- 如何在Ionic2测试版中包含Ionic.io服务
- socket.io发射三次
- AngularJS$q承诺使用socket.io
- Atom.io中AngularJS的方法完成
- 如何知道使用socket.io订阅/取消订阅频道
- 可以't连接客户端和服务器import.io
- 通过socket.io发射给特定的人
- 通过socket.io从浏览器流式传输视频
- 通过node.js和socket.io向特定用户发送数据
- 拖动&删除Fullcalendar.io资源-更新视图
- 使用webdriver io在可滚动元素内滚动
- 在现有Node.js、Express、MongoDB和Socket.io Stack之上添加AngularJS
- angular full - stack生成器的生产应用不能正确地服务于socket.io