救命 ! 请我想在另一个视图中查看详细信息。

2020-09-21 09:18发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我想在另一个视图中...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

 我想在另一个视图中查看我的机场的详细信息,我遵循了以下教程:https://sapui5.hana.ondemand.com/sdk/#/topic/2366345a94f64ec1a80f9d9ce50a59ef.html

 但我有一个错误:错误:段" {airportPath}"的值" products/1"无效。

 有谁可以帮助我吗?

 谢谢

 
 Airport.controller.js

 onInit:function(){
 var oList = this.getView()。byId(" List01");


 oList.bindItems({
 路径:" JSON>/产品",
 模板:新sap.m.StandardListItem({
 类型:"导航",
 标题:" {JSON> fields/aeroport}",
 按下:[this.onPress,此]
 })
 });

 },

 onPress:功能(oEvt){
 var oItem = oEvt.getSource();
 var temp = oItem.getBindingContext(" JSON")。getPath()。substr(1);
 var oRouter = sap.ui.core.UIComponent.getRouterFor(this);
 oRouter.navTo(" Detail",{
 airportPath:临时
 });
 },


 
 >>> detailAirport.controller.js





 onInit:function(){

 var oRouter = sap.ui.core.UIComponent.getRouterFor(this);
 oRouter.getRoute(" detail")。attachPatternMatched(this._onObjectMatched,this);
 },

 _onObjectMatched:function(oEvt){

 this.getView()。bindElement({
 路径:"/" + oEvt.getParameter(" arguments")。airportPath,
 型号:" JSON"
 });
 },
 
 manifest.json

 "路线":[
 {
 " pattern":"",
 " name":" Principal",
 "目标":[
 "主要"
 ]

 },{
 " pattern":" CdgInformation/",
 " name":" CdgInformation",
 "目标":[
 " CdgInformation"
 ]

 },{
 " pattern":" FlightChart/",
 " name":" FlightChart",
 "目标":[
 "飞行图"
 ]
 },{
 " pattern":" OtherAirport/",
 "名称":" OtherAirport",
 "目标":[
 "其他机场"
 ]
 },{
 这里>>>>>>>>>" pattern":" Detail/{airportPath}",
 " name":"详细信息",
 "目标":[
 "详情"
 ]
 }
 ],
 
付费偷看设置
发送
2条回答
半个程序猿
1楼 · 2020-09-21 10:15.采纳回答

马蒂厄,你好

阅读此代码和错误消息,您 temp 变量包含" products/1"。 在您提供的教程链接中,它提到:

我们需要通过在字符串上调用.substr(1)从绑定路径中删除第一个/,因为这是URL中的特殊字符,并且不允许使用,我们将在详细信息页面上再次添加它。
>

字符"/"不能位于导航参数的任何位置。 从技术上讲,您应该在route参数中提供唯一的ID,并在Detail绑定上构建其他前缀(如果需要)(即,您应仅将"机场ID"" 1"提供给navTo方法)。

您可以简单地将一个更大的数字传递给substr,以仅获取ID(在本例中为9),但是通常您可以使用绑定上下文中的getProperty方法从对象获取ID。 请检查导航和路由-步骤7 -从UI5示例(EmployeeList和Employee控制器)中导航到带有强制参数的路由代码。

致谢。

wang628962
2楼-- · 2020-09-21 10:24

嗨,泰雷兹!

我了解并修复了该问题,并且..是的,它是有效的:)!

非常感谢!

一周热门 更多>