1

我们正在从使用 JSP 的 Java 开发迁移到 AngularJS 方法(富客户端)。

在 JSP 中,我们可以使用 Apache Tiles 进行模板化,因此我们定义了常见的东西,例如菜单、页眉和页脚,并在任何地方导入。

我正在考虑使用 JSP/Apache Tiles 来制作它,但我认为这会使我使用 Karma 进行自动化测试变得困难。

编辑:我们正在构建一个巨大的应用程序,我们将拥有大量的表单/菜单项,并且我们计划为其中的每一个创建一个单页应用程序。

4

3 回答 3

2

这取决于。

您仍然可以对整个应用程序使用服务器端模板(我使用带有 Symfony2 应用程序的 twig),然后对某些需要以某种方式具有功能的重复出现的元素使用带有部分模板(简单 html 文件)的指令。

您实际上可以在您喜欢的模板引擎中再次编写这些部分模板,只要您确保在将其交付给客户端之前对其进行解析。

除此之外:只需使用简单的 HTML/CSS,对“变量”使用绑定,并使用 Angular 指令(ng-class、ng-if 等)根据您的模型数据以您想要的方式设置/显示元素。如果您需要更复杂的东西:只需编写您自己的指令!

于 2013-11-14T16:31:56.880 回答
0

查看角度指令:http ://docs.angularjs.org/guide/directive

拥有指令意味着您可以定义如下内容:

<div class="someContainer">
    <div class="menu"></div>
</div>

让它变成这样:

<div class="someContainer">
    <ul>
        <li>Menu Item 1</li>
        <li>Menu Item 2</li>
        <li>Menu Item 3</li>
    </ul>
</div>
于 2013-11-14T16:15:27.013 回答
0

Angularjs 是具有厚客户端的单页应用程序的最佳解决方案。它适用于所有事物。确保你花一些时间来设计你的指令。这些 veidos 可能会有帮助:http: //egghead.io/

它不仅仅是指令。作为一个整体框架,它很棒。您可以通过最佳性能和测试支持真正扩展您的应用程序。

于 2013-11-26T11:55:24.467 回答