SAP Fiori 实战课程(二):新建页面
课程回顾
上一课中,利用Visual studio Code 新建、并运行了一个Demo工程。可以实现对项目的启动,启动后进入一个List清单。
那么本次课程的目前就是在上一节Demo的基础上,从零开始新建一个完整的页面。实现从首页清单,选择行后,鼠标点击,进入下一个页面。
准备工作
在开始之前,把上一节代码中的页面的显示的清单抽取成一个单独的json文件,这样controller层的代码就显得没有那么臃肿。但是标准版的做法其实是需要把清单数据,直接放到JSONModel对象里面。
这里演示下View层的数据如何从指定文件夹取。
1 首先把product.json文件,放在webapp文件夹下
2 在manifast.json文件内model属性配置如下:
"models": {"i18n": {"type": "sap.ui.model.resource.ResourceModel","settings": {"bundleName": "project1.i18n.i18n"}},"products": {"type": "sap.ui.model.json.JSONModel","uri": "products.json"},
主要是为了引入products.json文件。
然后修改View1的xml和controller如下:
<mvc:View controllerName="project1.controller.View1"xmlns:mvc="sap.ui.core.mvc" displayBlock="true"xmlns="sap.m"><Page id="page" title="{i18n>title}"><content><Listitems="{products>/ProductCollection}"headerText="Products"><ObjectListItemtitle="{products>Name}"type="Active"press="onListItemPress"number="{parts:[{path:'products>Price'},{path:'products>CurrencyCode'}],type: 'sap.ui.model.type.Currency',formatOptions: {showMeasure: false}}"numberUnit="{products>CurrencyCode}"><firstStatus><ObjectStatustext="{products>Status}"state="{path: 'products>Status',formatter: 'project1.controller.Formatter.status'}" /></firstStatus><ObjectAttribute text="{products>WeightMeasure} {products>WeightUnit}" /><ObjectAttribute text="{products>Width} x {products>Depth} x {products>Height} {products>DimUnit}" /></ObjectListItem></List></content></Page>
</mvc:View>
主要的区别是所有的属性前面都加入了 products>。
View1.controller.js修改后:
sap.ui.define(["sap/ui/core/mvc/Controller",'sap/m/MessageToast','./Formatter','sap/ui/model/json/JSONModel'
],/*** @param {typeof sap.ui.core.mvc.Controller} Controller*/function (Controller, MessageToast, Formatter, JSONModel) {"use strict";return Controller.extend("project1.controller.View1", {onInit: function () {},onListItemPress:
相关文章:
![](https://i-blog.csdnimg.cn/direct/d6101e27ec0549959a75982f1d596fdf.png)
SAP Fiori 实战课程(二):新建页面
课程回顾 上一课中,利用Visual studio Code 新建、并运行了一个Demo工程。可以实现对项目的启动,启动后进入一个List清单。 那么本次课程的目前就是在上一节Demo的基础上,从零开始新建一个完整的页面。实现从首页清单,选择行后,鼠标点击,进入下一个页面。 准备工作 在开…...
![](https://www.ngui.cc/images/no-images.jpg)
【Rust光年纪】超越ORM:探索Rust语言多款数据库客户端库的核心功能和使用场景
数据库操作新选择:从异步操作到连接管理,掌握Rust语言数据库客户端库的全貌 前言 在现代软件开发中,与数据库进行交互是一个常见的任务。Rust语言作为一种高性能、内存安全的编程语言,拥有丰富的生态系统来支持各种数据库操作。…...
![](https://www.ngui.cc/images/no-images.jpg)
解决:事件监听器 addEventListener 被多次调用
背景: 给一个元素添加了事件监听,click 会触发 然而在实际场景中,点击一次,事件会被触发两次 阻止冒泡也没有用 解决: 使用API:event.stopImmediatePropagation() stopImmediatePropagation() 方法可防止…...
![](https://i-blog.csdnimg.cn/direct/c5bad49f6e104a39b713125160fe4b3f.png)
配置RIPv2的认证
目录 一、配置IP地址、默认网关、启用端口 1. 路由器R1 2. 路由器R2 3. 路由器R3 4. Server1 5. Server2 二、搭建RIPv2网络 1. R1配置RIPv2 2. R2配置RIPv2 3. Server1 ping Server2 4. Server2 ping Server1 三、模拟网络攻击,为R3配置RIPv2 四、在R…...
![](https://i-blog.csdnimg.cn/direct/1d4da869824647f688af9f81f42eca97.png)
前端调试技巧:动态高亮渲染区域
效果: 前端界面的渲染过程、次数,会通过高亮变化来显示,通过这种效果排除一些BUG 高亮 打开方式 F12进入后点击ESC,进入rendering,选择前三个即可(如果没有rendering,点击橘色部分勾选上&…...
![](https://www.ngui.cc/images/no-images.jpg)
深克隆与浅克隆的区别与实现
在软件开发中,克隆对象是一个常见需求。克隆的方式主要有两种:深克隆(Deep Clone)和浅克隆(Shallow Clone)。了解它们的区别及其实现方法,对于编写高效、安全的代码非常重要。 深克隆与浅克隆的…...
![](https://i-blog.csdnimg.cn/direct/9c6266b263af4929943a83aeeb0f3719.png)
【学习笔记】无人机系统(UAS)的连接、识别和跟踪(六)-无人机直接C2通信
目录 引言 5.4 直接C2通信 5.4.1 概述 5.4.2 A2X直接C2通信服务的授权策略 5.4.3 USS使用A2X直接C2通信服务的C2授权程序 5.4.4 直接C2通信建立程序 引言 3GPP TS 23.256 技术规范,主要定义了3GPP系统对无人机(UAV)的连接性、身份识别…...
![](https://i-blog.csdnimg.cn/direct/efaff5333be84ddaa306af24b29e26f3.png)
认识和安装R的扩展包,什么是模糊搜索安装,工作目录和空间的区别与设置
R语言以其强大的功能和灵活的扩展性,成为了无数数据分析师和研究者的首选工具。R的丰富功能和海量扩展包直接相关,但如何高效管理这些扩展包,进而充分发挥R的强大潜力?本文将为您揭示这些问题的答案。 一、R的扩展包 R的包(packages)是由R函数、数据和预编译代码组成的一…...
![](https://www.ngui.cc/images/no-images.jpg)
解决STM32开启定时器时立即进入一次中断程序问题
转自 解决STM32开启定时器时立即进入一次中断程序问题_stm32f407定时器初始化自动进入一次-CSDN博客 配置STM32定时器时,定时器中断使能、定时器使能、清除更新中断标志位,三者不同顺序程序执行时有不同效果,具体如下: TIM_Clea…...
![](https://i-blog.csdnimg.cn/direct/77321e5be8644d6cb748d7084f5bd494.png)
Unity UGUI 之EventSystem
本文仅作学习笔记与交流,不作任何商业用途 本文包括但不限于unity官方手册,唐老狮,麦扣教程知识,引用会标记,如有不足还请斧正 1.EventSystem是什么? 有需要请查看手册:Unity - 手册࿱…...
![](https://img-blog.csdnimg.cn/img_convert/13ef1d419310f981ead8d649cc63c69d.webp?x-oss-process=image/format,png)
USB转多路UART - USB 基础
一、 前言 断断续续做了不少USB相关开发,但是没有系统去了解过,遇到问题就很被动了。做这个USB转UART的项目就是,于是专门花了一天的时间学习USB及CDC相关,到写这文章时估计也忘得差不多了,趁项目收尾阶段记录一下&am…...
![](https://www.ngui.cc/images/no-images.jpg)
接近50个实用编程相关学习资源网站
Date: 2024.07.17 09:45:10 author: lijianzhan 编程语言以及编程相关工具等实用性官方文档网站 C语言文档:https://learn.microsoft.com/zh-cn/cpp/c-languageMicrosoft C、C和汇编程序文档:https://learn.microsoft.com/zh-cn/cppJAVA官方文档&#…...
![](https://www.ngui.cc/images/no-images.jpg)
在数据操作中使用SELECT子句
目录 一、INSERT 语句中使用 SELECT子句 二、UPDATE 语句中使用 SELECT子句 三、DELETE 语句中使用 SELECT子句 一、INSERT 语句中使用 SELECT子句 在 INSERT 语句中使用 SELECT子句,可以将一个或多个表或视图中的数据添加到另外一个表中。使用 SELECT 子句还可以…...
![](https://i-blog.csdnimg.cn/direct/0edf40d26e334b52ae917b7323db5f85.png)
Golang | Leetcode Golang题解之第274题H指数
题目: 题解: func hIndex(citations []int) int {// 答案最多只能到数组长度left,right:0,len(citations)var mid intfor left<right{// 1 防止死循环mid(leftright1)>>1cnt:0for _,v:range citations{if v>mid{cnt}}if cnt>mid{// 要找…...
![](https://i-blog.csdnimg.cn/direct/7de7c6663d544d57bb5d005ea10eb108.png)
区块链技术在智能家居中的创新应用探索
随着物联网技术的发展和智能家居市场的蓬勃发展,区块链技术作为一种去中心化的数据管理和安全保障技术,正在逐渐引入智能家居领域,并为其带来了新的创新应用。本文将探讨区块链技术在智能家居中的具体应用场景、优势以及未来发展方向。 智能家…...
![](https://img-blog.csdnimg.cn/img_convert/607027f9a3476b71bc355af5d5a8d3c4.png)
无需业务改造,一套数据库满足 OLTP 和 OLAP,GaiaDB 发布并行查询能力
在企业中通常存在两类数据处理场景,一类是在线事务处理场景(OLTP),例如交易系统,另一类是在线分析处理场景(OLAP),例如业务报表。 OLTP 数据库擅长处理数据的增、删、改,…...
![](https://www.ngui.cc/images/no-images.jpg)
PHP 表单验证:邮件和URL
PHP 表单验证:邮件和URL 在Web开发中,表单验证是一个至关重要的环节,它确保了用户输入的数据的有效性和安全性。特别是在处理邮件地址和URL时,准确的验证尤为重要。本文将详细介绍如何使用PHP来验证表单中的邮件地址和URL。 邮件…...
![](https://www.ngui.cc/images/no-images.jpg)
前端八股文 路由的懒加载
为什么会有 路由的懒加载 在现代单页应用(SPA)的开发中,路由懒加载是一种提升应用性能的关键技术。通过按需加载组件,而非在应用启动时一次性加载所有模块,可以显著减少初次加载时间和资源消耗。本文旨在深入探讨前端…...
![](https://i-blog.csdnimg.cn/direct/77c1bb8c71f14d049d176a8e0f108fcd.png)
HarmonyOS Web组件(二)
1. HarmonyOS Web组件 官方文档 1.1. 混合开发的背景和好处 混合开发(Hybrid Development)是一种结合原生应用和Web应用的开发模式,旨在同时利用两者的优势。随着移动应用需求的多样化和复杂化,单一的开发方式往往难以满足所有…...
![](https://www.ngui.cc/images/no-images.jpg)
HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 单选题序号2
基础认证题库请移步:HarmonyOS应用开发者基础认证题库 注:有读者反馈,题库的代码块比较多,打开文章时会卡死。所以笔者将题库拆分,单选题20个为一组,多选题10个为一组,题库目录如下,…...
![](https://img-blog.csdnimg.cn/img_convert/8d24a8e6bd4efd5096189472f3b14f5d.png)
基于python深度学习遥感影像地物分类与目标识别、分割实践技术应用
目录 专题一、深度学习发展与机器学习 专题二、深度卷积网络基本原理 专题三、TensorFlow与Keras介绍与入门 专题四、PyTorch介绍与入门 专题五、卷积神经网络实践与遥感图像场景分类 专题六、深度学习与遥感图像检测 专题七、遥感图像检测案例 专题八、深度学习与遥感…...
![](https://i-blog.csdnimg.cn/direct/ed87bd73d9bf4b6faa3d4d9b3b10566b.png)
叶再豪降龙精英课程总结
文章目录 1.思维认知1.1 稻盛和夫成功公式1.2 龙头主升模式1.3 龙头主升-两种路径1.4 股市新手的炒股思路1.5 龙头案例1.6 降龙心法 2.情绪周期2.1 情绪周期2.1 情绪演绎周期2.2 情绪的四个部分2.2.1 指数的情绪周期2.2.3 热点情绪周期2.2.4 热点情绪演绎周期2.2.5 大热点支线2…...
![](https://www.ngui.cc/images/no-images.jpg)
算法 - 查找算法(顺序、折半、红黑树、AVL树、B+树、散列)
查找 顺序查找 查找算法原理: 顺序查找是一种简单的查找方法,从数组的第一个元素开始,依次比较每个元素,直到找到目标元素或者数组结束为止。 实现步骤: 从数组的第一个元素开始。逐一比较数组中的元素与目标值。如…...
![](https://i-blog.csdnimg.cn/direct/c90be91e3f574ae0bec8265fa88fded4.png)
TCP与UDP网络编程
网络通信协议 java.net 包中提供了两种常见的网络协议的支持: UDP:用户数据报协议(User Datagram Protocol)TCP:传输控制协议(Transmission Control Protocol) TCP协议与UDP协议 TCP协议 TCP协议进行通信的两个应用进程:客户端、服务端 …...
![](https://i-blog.csdnimg.cn/direct/65e75321ab7e4874aeeec5201fdf4bc2.jpeg)
媲美Midjourney-v6,Kolors最新文生图模型部署
Kolors模型是由快手团队开发的大型文本到图像生成模型,专门用于将文本描述转换成高质量的图像。 Kolors模型支持中英文双语输入,生成效果与Midjourney-v6相媲美,能够处理长达256个字符的文本输入,具备生成中英文文字的能力。 Ko…...
![](https://i-blog.csdnimg.cn/direct/18736a810b29444fb383703e42164993.jpeg#pic_center)
深度学习程序环境配置
深度学习环境配置 因为之前轻薄本没有显卡跑不起来,所以换了台电脑重新跑程序,故记录一下配置环境的步骤及常见错误 本人数学系,计算机部分知识比较匮乏,计算机专业同学可以略过部分内容 深度学习环境配置 深度学习环境配置 CUD…...
![](https://i-blog.csdnimg.cn/direct/c410906f7a664a66937221b8aa5a299f.png)
【STM32 HAL库】全双工I2S+双缓冲DMA的使用
1、配置I2S 我们的有效数据是32位的,使用飞利浦格式。 2、配置DMA **这里需要注意:**i2s的DR寄存器是16位的,如果需要发送32位的数据,是需要写两次DR寄存器的,所以DMA的外设数据宽度设置16位,而不是32位。…...
![](https://i-blog.csdnimg.cn/direct/ab7bb63dd6624c42bc794bd7eaa74c6f.png)
【Spring Boot】网页五子棋项目中遇到的困难及解决方法
目录 一、HikariPool-1 - Starting异常二、Invalid bound statement (not found)异常三、The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary异常四、The server time zone value时区报错异常五、补充知识点…...
![](https://www.ngui.cc/images/no-images.jpg)
营销策划方案模板
这应该是目前最详细最完整的营销策划方案模板,营销公司内部都在使用的标准版本,你可以根据自己的营销内容直接填入这个模板,很快就能写好一份至少80分的营销策划方案。 如果暂时用不到也可以先收藏,以备不时之需。 废话不多说&a…...
![](https://i-blog.csdnimg.cn/direct/035cdbbacfbc47c28022c939c3a615f7.jpeg#pic_center)
Python入门基础教程(非常详细)
现在找工作真的越来越难了!今年更是难上加难 前几天在网上刷到这样一条热搜: #23岁找工作因年龄大被HR拒绝了# 是这个世界疯了还是我疯了? 合着只想要有20年以上工作经验的应届毕业生是吧 这好像就是现在的就业市场现状:“35岁…...
![](/images/no-images.jpg)
建设网站简单教程/最新新闻事件摘抄
企业需要什么 企业有三个最基本的诉求:降低成本、提高生产效率、提升业务质量,而信息化的系统/软件可以帮助企业有效解决以上三个问题。但企业软件价格昂贵、技术复杂、维护成本太高也是另不少中小型企业望而却步,这时SaaS模式的软件就随着市…...
![](https://img-blog.csdnimg.cn/img_convert/bb8583511df17758f2e2a0e02e318f9d.png)
昆明网站设计公司哪家好/百度新版本更新下载
10月31日,广联达科技股份有限公司(以下简称“广联达”)主办的“BIM5D 4.0产品发布会”在广州隆重举办,基于BIM技术的项目精细化管理软件“广联达BIM5D 4.0”正式在南粤发布。来自广东建筑业界百余人参加了本次发布会。《中国建筑业企业BIM应用分析报告(2…...
![](https://www.oschina.net/img/hot3.png)
wordpress数据库设计优缺点/怎么优化标题和关键词排名
2019独角兽企业重金招聘Python工程师标准>>> 在 输入/输出流体系中,有两个特殊的流 PushbackInputStreamPushbackReader方法: void unread(byte[]/char[] buf) : 将一个字节或者字符数组内容推回到推回缓冲区中,从而可以重复读取刚…...
![](https://img-blog.csdnimg.cn/20210529165815714.png)
单页面网站建设/怎么查看域名是一级还是二级域名
第五章 ATK-STM32MP157文件系统简介**5.1 文件系统目录简介****5.2 文件系统Qt版本****5.3 如何创建systemd 自启动服务****5.4 如何禁用Qt界面启动**(1)实验平台:正点原子STM32MP157开发板 (2)购买链接:https://item.taobao.com/item.htm?&…...
![](/images/no-images.jpg)
织梦开发网站/网站设计培训
开始学习tensorflow了,张量是tensorflow最基础的概念,我发现自己还不会。学习的视频中,老师也没讲到,只是一带而过,刚刚参考了几篇博客,对张量大概有个了解,但是里面的数学用语还是不懂…...
![](/images/no-images.jpg)
做第一个php网站/热狗seo顾问
周次 学习时间 新编写代码行数 博客量(篇) 学到知识点 本周 5 80(HTML的不知道算不算) 1 JAVA基础,网络基础的静态路由配置, XX XXX XXXX XXXX 转载于:https://www…...