第30步:调试工具

本文档介绍了如何使用SAPUI5的内置诊断工具和浏览器开发者工具来调试和修复应用中的问题。一个具体的例子是由于输入错误导致价格在发票中不显示。通过检查控件绑定和使用SAPUI5支持工具,我们可以定位并修复这个问题。此外,还提到了UI5Inspector插件作为Chrome浏览器的辅助调试工具。最后,文章强调了加载调试源以提高代码可读性的重要性,并提供了获取帮助和进一步学习资源的途径。

说明

尽管我们在之前的步骤中添加了基本的测试覆盖,但似乎我们意外地破坏了应用,因为它不再在发票中显示价格。我们需要在别人发现之前调试并修复这个问题。


幸运的是,SAPUI5提供了一些调试工具,我们可以在应用程序中使用这些工具来检查应用程序逻辑,浏览器的开发人员工具也相当不错。现在我们将检查根本原因。


预览

在这里插入图片描述

诊断窗口

代码

您可以在演练-步骤30查看和下载所有文件。

webapp/view/InvoiceList.view.xml
在这里插入图片描述

<mvc:View
		controllerName="sap.ui.demo.walkthrough.controller.InvoiceList"
		xmlns="sap.m"
		xmlns:mvc="sap.ui.core.mvc">
	<List
			id="invoiceList"
			class="sapUiResponsiveMargin"
			width="auto"
			items="{
			path : 'invoice>/Invoices',
			sorter : {
				path : 'ShipperName',
				group : true
			}
		}">
		<headerToolbar>
			<Toolbar>
				<Title text="{i18n>invoiceListTitle}"/>
				<ToolbarSpacer/>
				<SearchField width="50%" search=".onFilterInvoices"/>
			</Toolbar>
		</headerToolbar>
		<items>
			<ObjectListItem
					title="{invoice>Quantity} x {invoice>ProductName}"
					number="{
					parts: [{path: 'invoice>ExTendedPrice'}, {path: 'view>/currency'}],
					type: 'sap.ui.model.type.Currency',
					formatOptions: {
						showMeasure: false
					}
				}"
				numberUnit="{view>/currency}"
					numberState="{=	${invoice>ExtendedPrice} > 50 ? 'Error' : 'Success' }">
				<attributes>
					<ObjectAttribute text="{
						path: 'invoice>Status',
						formatter: '.formatter.statusText'
					}"/>
				</attributes>
			</ObjectListItem>
		</items>
	</List>
</mvc:View>

我们在number属性的绑定中引入了一个输入错误,以模拟频繁出现的错误; 我们使用的是’invoice>ExTendedPrice’,而不是使用’invoice>ExtendedPrice’。现在我们调用应用程序,注意到价格实际上不见了。通过输入快捷键 Ctrl + Shift + Alt / Option + S,我们打开SAPUI5支持诊断工具并检查应用程序。

注意
如果你使用谷歌Chrome浏览器,你可以安装UI5 Inspector插件。有了这个插件,你可以轻松调试基于SAPUI5或OpenUI5的应用程序。更多信息,请参见UI5 Inspector

除了应用程序的技术信息和类似于浏览器的开发工具控制台的跟踪外,还有一个非常方便的工具用于检查对话框中的此类错误。单击右边的展开符号,打开选项卡Control Tree。

左侧显示SAPUI5控件的层次树,右侧显示所选控件的属性。如果我们现在选择树的第一个ObjectListItem控件,并转到右侧的Binding Infos选项卡,我们实际上可以看到number属性的绑定路径被标记为无效。我们现在可以修正视图中的错误,价格应该会再次出现在发票清单中。

有时错误不容易发现,实际上需要使用浏览器的工具调试JavaScript代码。出于性能方面的考虑,SAPUI5文件以简化版本提供,这意味着所有可能的变量名都被缩短,注释也被删除。

这使得调试更加困难,因为代码的可读性大大降低。可以通过添加URL参数sapu -ui-debug=true来加载调试源,也可以通过按 Ctrl + Shift + Alt / Option + P 并在弹出的对话框中选择“Use Debug Sources”来加载。在重新加载页面之后,您可以在浏览器的开发人员工具的Network选项卡中看到,现在已经加载了许多带有-dbg后缀的文件。这些是源代码文件,包括注释和应用程序的未压缩代码和SAPUI5工件。

在这里插入图片描述

技术信息对话框

有关SAPUI5支持工具的更详细解释,请参阅故障排除教程。

如果您在开发任务中遇到了问题,需要一些帮助,您也可以在SAPUI5相关的论坛中提出问题,例如SAP社区Stack Overflow

约定

  • 按照SAPUI5的约定,未压缩的源文件以*-dbg.js结尾

相关信息

章节

  1. 第1步:你好世界
  2. 第2步:引导
  3. 第3步:控件
  4. 第4步:XML视图
  5. 第5步:控制器
  6. 第6步:模块
  7. 第7步:JSON模型
  8. 第8步:可翻译的文本
  9. 第9步:组件配置
  10. 第10步:应用程序描述符
  11. 第11步:页面和面板
  12. 第12步:Shell控件作为容器
  13. 第13步:外边距和内边距
  14. 第14步:自定义CSS和主题颜色
  15. 第15步:嵌套视图
  16. 第16步:对话框和片段
  17. 第17步:片段回调
  18. 第18步:图标
  19. 第19步:重用对话框
  20. 第20步:聚合绑定
  21. 第21步:数据类型
  22. 第22步:表达式绑定
  23. 第23步:自定义格式器
  24. 第24步:过滤
  25. 第25步:排序和分组
  26. 第26步:远程OData服务
  27. 第27步:模拟服务器配置
  28. 第28步:使用QUnit进行单元测试
  29. 第29步:与OPA的集成测试
  30. 第30步:调试工具
  31. 第31步:路由和导航
  32. 第32步:路由与参数
  33. 第33步:路由回溯和历史
  34. 第34步:自定义控件
  35. 第35步:响应性
  36. 第36步:设备适应
  37. 第37步:内容密度
  38. 第38步:可访问性
内容概要:本文设计了一种基于PLC的全自动洗衣机控制系统内容概要:本文设计了一种,采用三菱FX基于PLC的全自动洗衣机控制系统,采用3U-32MT型PLC作为三菱FX3U核心控制器,替代传统继-32MT电器控制方式,提升了型PLC作为系统的稳定性与自动化核心控制器,替代水平。系统具备传统继电器控制方式高/低水,实现洗衣机工作位选择、柔和过程的自动化控制/标准洗衣模式切换。系统具备高、暂停加衣、低水位选择、手动脱水及和柔和、标准两种蜂鸣提示等功能洗衣模式,支持,通过GX Works2软件编写梯形图程序,实现进洗衣过程中暂停添加水、洗涤、排水衣物,并增加了手动脱水功能和、脱水等工序蜂鸣器提示的自动循环控制功能,提升了使用的,并引入MCGS组便捷性与灵活性态软件实现人机交互界面监控。控制系统通过GX。硬件设计包括 Works2软件进行主电路、PLC接梯形图编程线与关键元,完成了启动、进水器件选型,软件、正反转洗涤部分完成I/O分配、排水、脱、逻辑流程规划水等工序的逻辑及各功能模块梯设计,并实现了大形图编程。循环与小循环的嵌; 适合人群:自动化套控制流程。此外、电气工程及相关,还利用MCGS组态软件构建专业本科学生,具备PL了人机交互C基础知识和梯界面,实现对洗衣机形图编程能力的运行状态的监控与操作。整体设计涵盖了初级工程技术人员。硬件选型、; 使用场景及目标:I/O分配、电路接线、程序逻辑设计及组①掌握PLC在态监控等多个方面家电自动化控制中的应用方法;②学习,体现了PLC在工业自动化控制中的高效全自动洗衣机控制系统的性与可靠性。;软硬件设计流程 适合人群:电气;③实践工程、自动化及相关MCGS组态软件与PLC的专业的本科生、初级通信与联调工程技术人员以及从事;④完成PLC控制系统开发毕业设计或工业的学习者;具备控制类项目开发参考一定PLC基础知识。; 阅读和梯形图建议:建议结合三菱编程能力的人员GX Works2仿真更为适宜。; 使用场景及目标:①应用于环境与MCGS组态平台进行程序高校毕业设计或调试与运行验证课程项目,帮助学生掌握PLC控制系统的设计,重点关注I/O分配逻辑、梯形图与实现方法;②为工业自动化领域互锁机制及循环控制结构的设计中类似家电控制系统的开发提供参考方案;③思路,深入理解PL通过实际案例理解C在实际工程项目PLC在电机中的应用全过程。控制、时间循环、互锁保护、手动干预等方面的应用逻辑。; 阅读建议:建议结合三菱GX Works2编程软件和MCGS组态软件同实践,重点理解梯形图程序中各环节的时序逻辑与互锁机制,关注I/O分配与硬件接线的对应关系,并尝试在仿真环境中调试程序以加深对全自动洗衣机控制流程的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值