Angularjs应用程序的标准目录结构?

时间:2014-03-21 18:48:18

标签: angularjs yeoman

我是一名网络开发人员,他主要依靠自己的工作。在构建应用程序时,我完全可以自由地构建代码。尽管如此,我尽可能地遵循行业惯例,因为这样可以让其他可能需要维护我的代码的开发人员更轻松。

我刚刚开始使用Angularjs。由于角度相对较新,我想知道是否有关于如何构建项目的任何惯例。

具体来说,我注意到Yeoman默认创建了这个设置:

app
 |-bower_components
 |-images
 |-scripts
 |---controllers
 |------ *.js
 |-styles
 |--- *.css
 |-views
 |--- *.html

两个问题:

  1. 这种结构被广泛使用吗? (即我也应该使用它吗?)
  2. 我应该在哪里放置我写的指令?在app/scripts/directives

2 个答案:

答案 0 :(得分:3)

似乎有一些我见过人们使用的约定,有一个Angular种子项目(https://github.com/angular/angular-seed),我倾向于认为这对于较小的项目是最好的。或者,您可以执行类似角度萌芽项目(https://github.com/thedigitalself/angular-sprout)的操作,该项目按特征而不是根据角度组件类型分隔文件夹,如果这有意义的话。

答案 1 :(得分:0)

我发现如果你分离你的组件职责,yeoman生成的目录结构很有效。即

app
  |-bower_components
  |-images
  |-scripts
    |---controllers
      |----feature
        |------ *.js
      |----nextFeature
        |------ *.js
    |---services
      |----feature
        |------ *.js
      |----nextFeature
        |------ *js
 |-styles
   |--- *.css
 |-views
   |--- *.html

然后你可以拥有一个几乎相同结构的测试目录。

test
  |-spec
    |---controllers
      |----feature
        |------- *Spec.js
      |----nextFeature
        |------ *Spec.js

等...

我知道这是9个月前,但我希望这会有所帮助。