【问题标题】:Is it safe to integrate MVVM [angularjs,knockout.js]in MVC [JSF/spring]在 MVC [JSF/spring] 中集成 MVVM [angularjs,knockout.js] 是否安全
【发布时间】:2014-03-13 21:50:16
【问题描述】:

将 MVVM [angularjs,knockout.js] 与 MVC [JSF/spring] 结合使用是一种好习惯吗?

  1. 这是从 JSF 页面内部控制 mvvm 对象/变量/的好方法吗? 假设我必须通过使用 jsf 控制器来更新 angularjs 模型中的下拉列表来获取列表对象并更新 angularjs 下拉模型。这是一种干净的方式还是垃圾方式,还是只是一种解决方法。

【问题讨论】:

    标签: angularjs jsf jakarta-ee model-view-controller mvvm


    【解决方案1】:

    我不得不承认我并不真正了解 JSF 或 Knockout。但是,我可以很容易地想象,因为双方都想负责查看组件,所以像 JSF 或 Wicket 这样的基于组件的框架可能无法与 Angular 一起使用。我想到了几件事:

    • 为什么需要服务器端的组件框架?为什么不使用像 Spring MVC 或 struts 这样的基于请求的框架?它们应该可以正常工作,因为它们只是负责整个页面的加载。
    • 如果您决定使用一种技术来做一件事,您可能会没事的。例如,用 JSF 做你的页面容器,用 Angular 做页面内的所有东西。我想你会没事的。当然,您正在失去 JSF 的大部分优势。

    【讨论】:

      【解决方案2】:

      我现在实际上正在这样做。我不能说最佳实践是什么,但我们发现我们需要能够从服务器输出动态 HTML,即使您在前端有一个 MVVM 框架。像国际化这样的事情在服务器端处理得更好,而使用来自服务器的纯静态 HTML 会遇到很多限制。

      主要缺点是复杂性。您将在服务器上拥有控制器、模型和视图,并在客户端上结合控制器、模板和视图模型。这使得架构有点混乱,尤其是当您将新成员带入团队时,因此文档和代码结构变得非常重要。

      总的来说,我认为这是一种有效的方法。它还没有咬我们,至少:)

      【讨论】:

        猜你喜欢
        • 2012-02-28
        • 2021-04-01
        • 1970-01-01
        • 2012-12-31
        • 1970-01-01
        • 2015-03-05
        • 2016-08-04
        • 2015-09-01
        • 2018-02-21
        相关资源
        最近更新 更多