我最近开始挖掘angularjs,并且对我的新项目有很多帮助,但是我对视图结构部分很感兴趣。
所以我真正理解的是,如何构建它。 如果我创建html角度局部并且不创建laravel视图是可以的,所以laravel只会处理数据库insect fecth edit delete,而角度局部视图将处理结果show和forms。
所以我的建议看起来像这样。 我的资产文件夹
/css
/img
/js
/lib
/partials
/home
index.html
/users
users.html
details.html
为他们创建restful controllers
上面列出的句柄
或者,如果有人可以向我展示一个关于此的基本知识,只需要控制器和视图部分,如何建立一个显示结果的单页,以及一个用id抓取我真的很感激。
谢谢
答案 0 :(得分:24)
启动Laravel& AngularJS项目负责后端和前端。基本上你有3个选择。
第一个&第二个选项是最简单的,如果您有一个小/中型应用程序,则可以。在这种情况下,只需将所有AngularJS文件保存在公共文件夹中,或者如果您选择将它们与laravel视图混合,只需删除.blade扩展名(或更改laravel blade / angularjs模板语法)
我认为在做SPA应用程序时尽可能保持后端尽可能安静,重点是将逻辑推送到浏览器,这意味着如果你将php与js混合太多,你的应用程序就会变得一团糟。 / p>
文件夹结构完全取决于您,您选择的选项无关紧要。但一个好的开始是将你的应用程序分成逻辑部分。
/app
application.js
/partials
user.html
login.html
etc.html
/vendor
Angular.js
Lodash.js
Etc.js
/controllers
User.js
Etc.js
/directives
Charts.js
Etc.js
/filters
Custom.js
Etc.js
/services
Backend.js
Etc.js
您还可以查看this以获取更好的angularjs风格指南。
以上是基本的文件夹结构,只需按照您的最佳选择进行自定义。如果您有一个小应用程序,您可以删除文件夹,只需拥有controllers.js directives.js and services.js (etc)
并将所有javascript保存在同一个文件中。这完全取决于你。在应用程序增长时分开,并始终重构。
如果选择第三个选项,则必须稍微自定义后端。这可能是最难的选择,但它也为您提供了极大的灵活性。基本上你可以将laravel放在一起,并在node.js中构建后端,或者使用laravel作为另一个用Ember.js编写的SPA应用程序的后端,而不对代码进行任何更改。请注意,如果您选择此选项,则无法使用某些laravel内容,例如刀片模板。您还必须为CORS设置laravel应用程序,请注意,在安全性方面可以有更多编码,例如CSRF令牌等。
当您使用应用程序进行制作时,您可以使用构建工具来进行缩放和制作。将你的应用程序整合到一个文件中。结帐ng-min进行缩小。
答案 1 :(得分:0)
这是我正在研究的项目之一。你可以看到我在角度js中有部分视图的方式。如上所述,您无需将视图文件放在公用文件夹中。