您好我是Angular.js的新手,并试图评估是否将它用于我们的下一个项目。 有没有人有建立多个Angular.js应用程序的经验,这些应用程序托管在可以共享模块,模板和指令的不同服务器(很可能是Spring后端)中?
基本上,我们有3个应用程序,它们执行类似的功能,但基于角色的业务逻辑略有不同......同样为了安全起见,应用程序可能托管在不同的服务器上,其中一个服务器位于防火墙之后。我希望能够在应用程序(资产,js,html,css,图像,指令等)之间尽可能地共享。实现这一目标的最佳做法是什么?
提前致谢!
答案 0 :(得分:0)
IMO AngularJS的一大优势在于它可以让您像我们开发企业软件一样开发Web应用程序:结构良好,组织良好,强大的模式等。
但认为他们永远是1:1是错误的。在一天结束时,你谈论的是一组小脚本文件。它们没有编译(缩小不计算),它们没有真实的认同感或彼此的关系等等。任何结构或重用都将来自你以及如何开发您的应用程序。
以下是一些最佳做法的起点:
学习并利用指令和服务。它们是Angular的核心和灵魂,真正值得一提的是它。基本上,每个单例都是一个服务(想想“管理者”),每个组件或小部件都是一个指令。当你开始讨论重用时,这很关键。
你可以创建一个名为modalWindow的小部件和一个名为modalManager的管理器,如果你仔细构建它们,你可以在你描述的所有应用程序中重用它们。或者,如果你写得很糟糕,你可以让它们难以重复使用! :)花一些时间来理解这一层,你会很高兴你做到了。
学习并利用Grunt(或Grasp等等,但如果你习惯了Ant,Grunt是一个很好的起点)。您的用例会为构建过程,构建自动化以及甚至Jenkins将所有部分组合在一起而尖叫。
Angular中没有任何内容知道如何根据应用程序的需要混合和匹配构建过程中的某些元素(它具有“依赖性”,但仅适用于JS - 如果您有两个版本的小部件,那么想要确保加载正确的那个?)Grunt(或类似的)将为您提供一个企业级构建工具,它将为您提供幕后所需的其余工具。