模块化结构的Express 4后端在一个MEAN应用程序



我是一个开发MEAN应用程序的新手,我来自Laravel结构来开发web应用程序,我不喜欢Laravel的地方是它不是那么模块化,所有东西都是分开的,尤其是模型,视图和控制器,在构建大型应用程序时,你必须滚动很多次才能在文件夹中导航…

我的问题是关于在MEAN堆栈下的Express,我要找的是一个结构,我为应用程序的每个实体创建模块,例如:

我有三个模块:用户问题答案;每个模块将包含该特定模块的路由、模型和控制器,例如:

├── node_modules
├── src
│   ├── client
│   │   └── ... //Frontend things managed by angular (like views, etc...)
│   └── server
│       ├── modules //By module i mean an entity
|       |   ├── users
|       |   |   ├── users.model.js
|       |   |   ├── users.controller.js
|       |   |   ├── users.routes.js
|       |   |   └── index.js
|       |   ├── questions
|       |   └── answers
|       ├── config
|       └── etc... //Suggestions please...
|
├── package.json
└── server.js

我怎么能建立这样的结构?到目前为止,我已经找到了这个关于模块化Express应用程序的教程,但我想扩展它,这样我就可以保持它的DRY,并利用John Papa在他的Angular风格指南中描述的LIFT原则,但是在后端。

我为什么要问这个?简单,我不喜欢滚动通过大文件夹打开一个文件,然后再次滚动打开另一个相关的文件,我想工作的结构易于维护,易于理解等…

如果可能的话,有人可以解释一个例子,如何设置一个应用程序使用这个结构,并将其上传到github?

在顶层放置一个node_modules。

给每个模块一个package.json

现在在引导中编写一个脚本,从package.json中找到所需的所有唯一node_modules。

node_modules解决了。确保它也能识别版本的差异。

构建一个通用运行脚本文件,读取指向所有其他模块的通用配置文件。

角2 . . 4 . .

相关内容

  • 没有找到相关文章

最新更新