我的项目使用 Spring MVC 和 AngularJS。 AngularJs $routing 和 ngView 可以代替 或 与 Apache Tiles 框架一起使用吗?据我所知,使用 $routing 和 ngView 我们可以创建模板并在单页应用程序中重用它们。
最佳答案
是的,可以使用 AngularJs 的路由代替 tiles。您也可以一起使用,但之后可能会破坏单页应用程序的想法。
在磁贴中,您可能会使用 jsp 文件。所以jsp文件在服务器端编译,并通过浏览器在客户端作为html文件。
在 Angular 中,您还可以创建基本布局。和 tiles 的布局 extend
能力一样,使用 ng-include
您可以将其他 View 包含在 ng-view
html 中。当路由另一个页面时,ng-view 将刷新包含的区域(AngularJs 上也有一些第三方插件/框架关于它。看看 ui-router 。它提供了很好的嵌套 View 。)。
在 Angular 方式中通常
不需要从服务器端获取 html(这种情况可能会根据其他情况而改变。不需要制作单页。)。因此,您需要将返回 ModelAndView
对象的 Controller 转换为 Map(作为示例)以返回 json
。这时候路由就会通过angularJs的routes来实现。在这些重构之后,您将拥有一个单页应用程序。或者你可以制作hybrid-singlepage
(有些页面有太多事件,所以你可以从这些页面开始制作单页以减少工作量)所以它会显示工作量取决于你的应用程序的大小。
关于java - 带有 Apache Tiles 的 AngularJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17981102/