MEAN栈文件结构&grunt

我正在学习一个个人项目的MEAN堆栈。 起初,我使用了yeoman / grunt / bower的组合,但是我对yeoman生成器的文件结构并不满意,所以现在我只需要在我的项目中手动configurationgrunt和node.js。

当我原型应用程序,我不断质疑我的文件结构是否好。 我做了很多研究,但是我找不到更好的方法来组织我的公共/文件夹。

这就是我的项目结构:

  • API /
    • 模型/ (这里是mongodb模型)
    • db.js (快速连接设置在这里)
    • routes.js (快速路线在这里)
  • node_modules / (这里是npm模块)
  • 上市/
    • css / (这里是css文件)
    • img / (图片在这里)
    • JS /
      • views / (angular度视图在这里)
      • app.js
    • 的index.html
  • SRC /
    • css / (这里是css文件)
    • img / (图片在这里)
    • JS /
      • 控制器/ (angular度控制器在这里)
      • 指令/ (这里是angular度指令)
      • views / (angular度视图在这里)
    • 的index.html
  • gruntfile.js
  • server.js

我在src /中完成所有的编码。 Grunt将所有html文件(index.html和js / views /),css和图像复制到public,并将我所有的angular度js文件uglify到public / js / app.js。

这听起来像个好主意吗? 我试图保持我的应用程序非常模块化,同时尽量减less生产。 有没有更好的/更清洁的方式来处理angular度js / view文件?

谢谢!

你可以看看这些回购的一些想法。

  • unbox是我维护的一个项目,帮助我快速build立一个MEAN堆栈types的体系结构
  • bevacqua.io是我的个人网站,build立在unbox之上
  • brut是unbox之上的另一个例子,但它使用了Angular并预先编译了模板

说到目录结构,我做了类似于你的方法。

 bin/ (built, static, site here) src/ statics/ css/ js/ img/ views/ 

基本上我把所有组成网站的东西当作“源代码”来处理,并且根据需要编译所有东西,把它放到bin ,然后从那里提供应用程序。