AngularJS项目结构

我真的很想帮助AngularJS,帮助我构build一个我正在开发的项目。

基本上,我有一个项目,我将在每个说(Postgres,Express,AngularJS,Node)的“PEAN”堆栈中做一个项目,并且需要一个关于如何构build它的概念。

其要点是,应用程序将有4种types的用户帐户,每个login用户将看到不同的视图。 这是一个简单的function设置图:

用户types1:
导航
– function1
– 特色2
– function3

用户types2:
导航
– function1
– 特色2
– function3

等另外2个用户…

不过,用户可以访问的每个function都是不同的。 所以我的问题仍然存在,客户端如何将客户端AngularJS应用程序的目录明智结构?

另外,应该如何设置存储库?

  1. 一个单一的回购API和客户端代码?
  2. 我可以分开API回购和客户端回购,并包含在一个客户端回购所有用户帐户的意见?
  3. 我应该为每种types的用户帐户有一个客户端回购?

这些问题的答案会清除很多的困惑,并会大大帮助我。 我已经做了大量的研究,正确的结构这样的应用程序,似乎无法弄清楚。

提前非常感谢您的帮助!

我不能说你的项目的架构,但我已经有了MEAN堆栈项目的结构(或者在这种情况下是PEAN)的经验。

在这种情况下,我不会把你的项目分成多个回购,让你所有的代码在一个地方是有帮助的。 只要一起运行,它应该保持在同一个回购。 当你的项目不能一起运行时,你应该分开回购,而且是两个项目(比如iOS应用程序和Web应用程序)

我的基本文件结构通常如下所示:

. +-- app/ (all of your angular, dynamic web app code) | +-- controllers/ | +-- directives/ | +-- factories/ | +-- views/ | +-- templates/ | +-- app.js +-- server/ (all of your nodejs, server side code) | +-- controllers/ | +-- models/ | +-- routes/ +-- public/ (static assets) | +-- css/ | +-- scripts/ | +-- images/ +-- index.js (run the project) 

文件夹结构因项目而异,因为不同的项目具有不同的性质。 但是无论你做什么,你都会得到一些如下所示的文件夹结构:

  • 您将需要两个根文件夹,一个用于服务器代码,另一个用于客户端代码。 客户端代码文件夹有时也被命名为“应用程序”。

  • 如果你有一个大项目,然后在客户端文件夹里面,你可以创build代表你的项目模块的子文件夹。 通常情况下,开发人员将模块划分为更好的pipe理模块,这些子文件夹代表了这些模块。

  • 在这些模块文件夹中,您可以为组件,模型,模块和路由分别提供文件夹。

  • 一个常用的文件夹也是需要的,你可以把你的常用工具,如普通pipe道,filter,HTTP组件,注射等。 服务器文件夹将具有自己的文件夹结构,具体取决于您是在做ASP.NET还是JSP或PHP。 在这个讨论中,我们将仅限于客户端angular文件夹结构。

有角的文件夹架构

图片由http://computerauthor.blogspot.in/2017/11/what-is-best-project-folder-structure.html提供

我build议你去这里: https : //github.com/johnpapa/angular-styleguide/blob/master/a1/README.md并按照这里列出的准则。 这有点过时了,因为它没有被更新为覆盖组件,但大部分仍然适用。

我还build议您在开始之前跳过控制器并查看组件。

实际上,如果您有select,因为您刚刚开始使用Angular 4,而不是在传统技术中构build新的应用程序,我会长期努力。