javascript - OpenUI5 : JS views vs. XML View

标签 javascript xml model-view-controller sapui5

我们目前正在一个新项目的环境中评估 SAP 的 OpenUI5。

虽然大多数示例和教程倾向于使用 XML 构建 View ,但出于个人喜好,我会选择 Javascript 来完成任务。但是,我在 OpenUI5 中研究的时间还不够长,无法确定这两种方法的任何具体优势。

使用JS有什么缺点吗?甚至优势?

非常感谢!

更新:

我同意 SDD64 的回答。在同时使用这两种方法一段时间后,我可以将以下优点和缺点添加到列表中:

XML 的优点:

  • 它们有助于坚持使用 mvc,因为您不太想将 Controller 逻辑引入 View
  • 可能允许使用所见即所得的编辑器
  • 非常含蓄,因此更容易学习

XML 缺点:

  • 可读性差
  • 修改现有 View 有时会比较棘手
  • 非常含蓄,如果你关心幕后发生的事情就不好

最佳答案

我也是基于 JS 的 View 的粉丝。可能的(dis)优点在我眼里:

JS 的优势

  • 面向对象的 View 创建。您可以创建对象、排列它们、调用它们的方法并使用您想要的任何 JavaScript 函数(例如循环)
  • 就我的口味而言,基于 SAPUI5 XML 的 View 似乎有点过于含蓄。在 JS 中,我可以从代码中清楚地读出我在做什么。
  • 页面可以是动态的
  • 你一直在使用 JavaScript

JS 的缺点

  • XML 支持 View 和逻辑之间的严格分离。例如,您被迫使用外部格式化程序。我认为 XML View 可能更简洁。
  • SAP 使用 XML View 发布所有 Fiori 应用程序。因此,您有点被迫至少了解如何阅读基于 XML 的 View 。
  • 您的 XML 代码行可能更少

** 更新 2015-06-18 **

目前 OpenUI5 1.28 在 XML View 中的支持条件和最近预览的 1.30 支持 binding for dynamic loading of XML fragments ,我觉得有必要更新我的答案。

有了这些新特性,XML View 获得了“健康”的灵 active 。与基于 JS 的 View 相比,它们对我来说更具吸引力。

关于javascript - OpenUI5 : JS views vs. XML View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29600577/

相关文章:

javascript - Angular 教程;无法从javascript读取

c# - 传递 USPS eVSCertifyRequest 错误,因为在数据库中找不到 MasterMID

php - PHP MVC 应用程序中用于限制登录(或其他)请求的公认通用模式

ajax - 如何在将 MVC 与 AJAX 结合使用时改进 SEO

javascript - 如何更改knockoutjs observableArray的索引而不替换整个数组

php - 检查登录状态 JavaScript

javascript - 如何使用 glob npm 模块获取具有不同模式的文件名列表

javascript - 如何使用 React 删除表格中的一行?

php - 使用 JQuery 从具有相同 POST 参数的同一 PHP 文件中得到不同的 AJAX XML 结果

xml - XSLT:将同级文本节点移动到选定节点中以进行 XLIFF 修复