节点 - 用于MVC开发的Express + Ember + Socket io项目文件结构

Sco*_*tty 4 javascript model-view-controller node.js express ember.js

所以我最近开始进入节点,并开始使用Express框架开展一些项目.我喜欢它 - 语法真的很吸引我,成为一个交互式的jQuery开发者.

然而,就项目文件结构而言,我似乎毫无头绪,似乎可能是膨胀的东西不成比例.

我在github上有一个基本的项目样板:https://github.com/KingScooty/node-express-3.0-html5-boilerplate非常适合我.

现在我想整合Ember.js.但是,我不知道如何构建目录.我正在考虑这个问题:

project
??? app
?   ??? collections
?   ??? models
?   ??? views
??? node_modules
??? public
?   ??? css
?   ??? img
?   ??? js
??? routes
??? server
    ??? environment
    ??? logs
Run Code Online (Sandbox Code Playgroud)

套接字io设置进入服务器文件夹,以及所有节点服务器配置和环境配置设置(开发/登台/生产).静态文件和jQuery公开,MVC应用程序的好处在app文件夹中.

但是将公共文件夹与app文件夹分开是不对的.更不用说我甚至如何在MVC文件夹结构中包含各种JS文件.

(前端MVC开发是我所知甚少的,但这也是我想要学习的同时也尝试将它集成到我的Node环境中)

如果有人能够在使用节点/插座io驱动后端的同时指出我正确的前端MVC开发路径,那将是邪恶的!

干杯.

-S

mik*_*eil 10

Sails.js是一个节点的MVC框架,它具有REST Express路由Socket.io消息的独特区别,其方式与Express路由相同.

它还捆绑了一个前端组件Mast.Mast提供与Meteor类似的功能,因为它允许您从客户端直接与数据库通信.如果需要提供更复杂的功能,只需在后端添加一个控制器即可.

更多信息:https: //github.com/balderdashy/sails


Gat*_* VP 6

因此,关于Express的事情是它并没有真正强制执行任何类型的代码结构.这是一种喜忧参半的祝福.它对于像JSON API这样的简单事物来说非常棒,但是当你开始处理整个MVC框架和UI时它变得更加复杂.

下面的帖子可能会帮助你.

就个人而言,我建议看看GeddyRailwayjs(现在叫做CompoundJS).这两者都试图为整个过程提供一些额外的结构.

您还可以在此处查看更广泛的选项列表.