Javascript 在AngularJS应用程序中形成适当的结构
假设我的数据库中有10个模型(表),我想基于该数据库构建一个AngularJS应用程序。我这里的问题是,在形成应用程序的AngularJS结构时,最佳实践是什么 我是否应该在应用程序中声明1个模块,并将该模块用于我的所有服务和控制器 当我有以下场景:学生模型和教师模型。。。我是否应该为学生和教师创建单独的controller.js文件,是否应该为学生和教师创建单独的service.js文件??或者所有服务都可以保存在一个JS文件中?有人能帮我弄清楚吗?我真的很想听听那些对AngularJS应用程序有“现场”经验的人的意见Javascript 在AngularJS应用程序中形成适当的结构,javascript,angularjs,structure,Javascript,Angularjs,Structure,假设我的数据库中有10个模型(表),我想基于该数据库构建一个AngularJS应用程序。我这里的问题是,在形成应用程序的AngularJS结构时,最佳实践是什么 我是否应该在应用程序中声明1个模块,并将该模块用于我的所有服务和控制器 当我有以下场景:学生模型和教师模型。。。我是否应该为学生和教师创建单独的controller.js文件,是否应该为学生和教师创建单独的service.js文件??或者所有服务都可以保存在一个JS文件中?有人能帮我弄清楚吗?我真的很想听听那些对AngularJS应用程
谢谢你 以下只是我的观点,但对我来说效果不错 每个后端控制器可以有一个服务,至少我喜欢这样映射它。例如,如果您有一组restful端点来操作教师表,那么您可以在Angular中有一个
Teacher
服务来执行这些restful操作。然后,您还可以拥有一个单独的Student
服务,该服务可以对数据库的学生执行restful操作
至于控制器,则视情况而定。如果使用路由,最好的选择是每条路由使用一个控制器。在任何情况下,控制器更像是视图的容器,它们不表示数据。话虽如此,如果你打算围绕数据构建Angular应用程序,你可以有这样的东西(至少这是我喜欢构建Angular应用程序的方式):
在路线中,您可以将listTeachersController与views/teachers/index.html中的模板连接起来,showTeacherController与views/teachers/show.html等连接起来。对学生来说也是如此
但这要视情况而定。您的前端可能不会遵循严格的restful风格,也可能不应该。我喜欢有一个控制器页面,但随着页面变得越来越复杂,可能是时候将其分解为继承自页面控制器的子控制器了
最后,对于模块,除非你的应用程序很大,否则我只会为整个应用程序使用一个模块。它使事情变得简单
把这个和盐一起吃。这只是我的观点,可能对您有效,也可能无效,这取决于您试图构建的内容。使用生成器帮助您组织应用程序。有很多,所以你可能不得不尝试一些,直到你找到一个你喜欢的。我喜欢这一条:当涉及到“仅我的意见”时,您现在应该知道您的代表提出的问题是离题的,应该做正确的事情,并为此投票结束。非常感谢您的精彩回答!这正是我需要的信息!:)@珀克斯456击掌!顺便问一下,你有多少年的工作经验我在6-7天前就开始熟悉Angular了,我不得不说,我对迄今为止所看到的一切感到惊讶。另外,你们有一些有用的链接,我可以在这里扩展我对角度的知识吗?:)我已经做了大约1.5年了。这本指南从一开始就帮了我不少忙:打得好。这种方法对我来说也很有效。按功能分组而不是按组件类型分组更具可伸缩性
-- app.js
-- /services
-- teacher.js
-- student.js
-- /controllers
-- /teachers
-- listTeachersController.js
-- showTeacherController.js
-- editTeacherController.js
-- /students
-- listStudentsController.js
-- showStudentController.js
-- editStudentController.js
-- /views
-- /teachers
-- index.html
-- show.html
-- edit.html
-- /students
-- index.html
-- show.html
-- edit.html
-- /directives
...
-- /interceptors
...
-- /filters