SAP UI5 初学者教程之四:XML 视图初探试读版

简介: Jerry 从 2014 年加入 SAP成都研究院 CRM Fiori 开发团队之后开始接触 SAP UI5,曾经在 SAP 社区和“汪子熙”微信公众号上发表过多篇关于 SAP UI5 工作原理和源码解析的文章

在 Jerry 这篇文章对 SAP UI5 一无所知的新手,从哪些材料开始学习比较好? 曾经提到,Jerry 也是从 SAP UI5 菜鸟一路走过来,深知只有 ABAP 开发背景的开发者,向 SAP UI5 开发领域转型的不易,因此我在业余时间设计了这份适合 SAP UI5 初学者的学习教程,把开发一个完整的 SAP UI5 应用的流程,拆分成若干个步骤,力求每个步骤里,把涉及到的知识点都涵盖到。这些知识点可能不像我的 UI5 源码分析系列文章那么深入,但力求浅显易懂,便于 SAP UI5 初学者理解。


本教程每一个步骤的源代码,都存放在我的 Github 上,分别用文件夹 01,02,03 等等来标识。

image.png

每一个步骤均是前一步骤的基础上,添加了若干新特性。建议零基础或者对 SAP UI5 知之甚少的初学者,按照顺序从第一个步骤开始循序渐进地学习,把这些代码下载到本地,配合教程的文字讲解,自己动手,以加深理解。


大家如果对教程的每个步骤有任何疑问,欢迎在教程对应的步骤文章里给我评论,进行留言。


本教程的前三个步骤,我们要么直接在 index.html 里,利用原生的标签 div 显示文本,要么创建 SAP UI5 Text 控件实例,再将其放置于 HTML 占位符 div 标签里。


从本步骤开始,我们会接触 SAP UI5 非常重要的概念:XML 视图,这个概念也是 SAP UI5 MVC 三大支柱之一:View 即视图层。


本步骤的代码:


https://github.com/wangzixi-diablo/ui5-tutorial/tree/main/04

image.png

在 SAP UI5 框架完成初始化之后,执行通过 data-sap-ui-oninit 指定的我们自定义的 module,即位于 webapp 文件夹下面的 index.js 实现的同名 module.


在本教程第三步骤 SAP UI5 初学者教程之三:开始接触第一个 SAP UI5 控件里,我们在 index 模块里,新建了一个 Text 控件实例,并将其放置到 id 为 content 的占位符 div 标签里。


本步骤我们更进一步,新建一个 XML 视图实例,将该视图实例放置到占位符 div 标签页里。


index.js 代码如下:

image.png

代码的四处关键点

(1) XMLView.create:该方法创建一个视图实例


(2) create 方法需要一个输入参数,该输入参数需要包含待创建的 xml 视图的名称和路径。


注意:代码第6行 viewName 的值,其中 sap.ui5.walkthrough 代表命名空间,view 代表我们 webapp 文件夹下的同名文件夹 view,而 App,对应了 view 文件夹里的 App.view.xml. 也就是说,命名空间后面的 view.App, 必须要和 SAP UI5 工程里对应的文件夹和视图文件名称匹配,否则运行时会报错。

image.png

(3) XMLView.create 的创建,并不会像步骤三创建一个简单的 Text 控件一样,调用 new Text 之后会立即返回创建好的控件实例,而是一个异步执行过程。


XMLView.create 返回的是一个 Promise 对象,待 XML 视图实例真正创建完毕之后,这个 Promise 对象的then 方法里传进去的回调函数会被执行。该回调函数的输入参数,即上图第7行的 oView,正是创建成功的 XML 视图实例。


(4) 调用 XML 视图实例的 placeAt 方法,将 XML 视图放到 id 为 content 的占位符 div 标签里。


下面我们再来看 App.view.xml 里的内容。

image.png

这个代码有上图标注的四处关键点。

关于这些关键点的详细介绍,请参考我的文章:SAP UI5 初学者教程之四:XML 视图初探

相关文章
|
2月前
|
XML JavaScript API
Ruby 教程 之 Ruby XML, XSLT 和 XPath 教程 3
Ruby XML, XSLT 和 XPath 教程
39 1
|
2月前
|
XML 数据采集 数据挖掘
豆瓣内容抓取:使用R、httr和XML库的完整教程
本教程介绍如何使用R语言的httr和XML库抓取豆瓣电影数据。首先引入必要库,然后设置亿牛云爬虫代理服务器确保请求稳定。接着,请求并解析豆瓣主页内容,提取XML文档中的数据,如标题和链接。通过分类统计链接,统计内部和外部链接数量,展示如何进行数据挖掘。完整代码示例包括请求、解析、统计和输出结果。
豆瓣内容抓取:使用R、httr和XML库的完整教程
|
7天前
|
XML Java 数据处理
JSP 教程 之 JSP XML 数据处理 3
在JSP中处理XML涉及使用XSLT转换。`main.jsp`演示了如何结合JSTL `<c:import>` 和 `<x:transform>` 标签将内联XML数据转换为HTML。`style.xsl`定义了一个模板,将`<books>`元素转换为表格,显示书名、作者和价格。当`main.jsp`运行时,它导入XSL样式表并应用到XML数据上,生成一个格式化的书籍列表。
8 0
|
29天前
|
XML 存储 JavaScript
50. 【Android教程】xml 数据解析
50. 【Android教程】xml 数据解析
19 1
|
8天前
|
XML Java 应用服务中间件
JSP 教程 之 JSP XML 数据处理 2
JSP教程演示了如何处理XML数据,涉及HTTP中的RSS文档。需在Tomcat的lib目录添加XercesImpl.jar和xalan.jar。示例中,`main.jsp`使用JSTL的 `<c:import>` 和 `<x:parse>` 标签导入并解析`books.xml`,显示书籍标题和价格。运行结果展示书名和第二本书的价格。
9 0
|
8天前
|
XML Java 数据处理
JSP 教程 之 JSP XML 数据处理 1
**JSP教程摘要: JSP处理XML** 在JSP中处理XML涉及设置`contentType`为`text/xml`以发送XML文档,如RSS。创建XML文档与HTML类似。
8 0
|
2月前
|
XML 存储 数据库
XML的使用教程
XML的使用教程
|
2月前
|
数据库
迈入 SAP CDS View 世界的前置知识 - SAP ABAP 数据库视图介绍试读版
迈入 SAP CDS View 世界的前置知识 - SAP ABAP 数据库视图介绍试读版
迈入 SAP CDS View 世界的前置知识 - SAP ABAP 数据库视图介绍试读版
|
2月前
|
数据库 开发者 容器
SAP OData metadata.xml 里 EntityType,EntitySet 和 EntityContainer 三个概念之间的区别和联系
SAP OData metadata.xml 里 EntityType,EntitySet 和 EntityContainer 三个概念之间的区别和联系
|
2月前
|
XML 数据格式 Ruby
Ruby 教程 之 Ruby XML, XSLT 和 XPath 教程 4
Ruby XML, XSLT 和 XPath 教程
118 1