SAPUI5奇怪的数据绑定行为
这是一个相当愚蠢的问题,但我不知道为什么会发生。我在我的控制器中有这样的功能:SAPUI5奇怪的数据绑定行为,sapui5,Sapui5,这是一个相当愚蠢的问题,但我不知道为什么会发生。我在我的控制器中有这样的功能: this.getView().setModel(this.placesModel, "myCity"); 然后,我使用Ajax请求将数据设置到我的express RESTFull应用程序和View.xml中 <List items="{path: 'myCity>/people'}"> <CustomListItem>
this.getView().setModel(this.placesModel, "myCity");
然后,我使用Ajax请求将数据设置到我的express RESTFull应用程序和View.xml中
<List items="{path: 'myCity>/people'}">
<CustomListItem>
<VBox>
<Title text="Person:"/>
<Label text="{myCity>/people/name}"/>
<Label text="{myCity>/people/age}"/>
</VBox>
</CustomListItem>
</List>
我有一个对象
myCity
,几乎没有属性。其中一个是objectpeople
,它是对象数组。当我试着这样列出他们时,我可以看到我所有的人都被列出了,但没有相应的姓名和年龄。此外,我发现很难理解何时使用
何时/
何时/模型名的基本绑定语法是{(模型名)>(路径到属性)}
,如果没有模型名(默认模型),则只需指定{path\u到属性}
如果没有contextbinding
,则需要初始斜杠(/)。在本例中,在列表中设置了contextbinding
,所以不需要使用斜杠
更新代码:
<List items="{path: 'myCity>/people'}">
<CustomListItem>
<VBox>
<Title text="Person:"/>
<Label text="{myCity>name}"/>
<Label text="{myCity>age}"/>
</VBox>
</CustomListItem>
</List>
有关详细信息,请参阅。模型名的基本绑定语法是{(模型名)>(路径到属性)}
,如果没有模型名(默认模型),则只需指定{path\u到属性}
如果没有contextbinding
,则需要初始斜杠(/)。在本例中,在列表中设置了contextbinding
,所以不需要使用斜杠
更新代码:
<List items="{path: 'myCity>/people'}">
<CustomListItem>
<VBox>
<Title text="Person:"/>
<Label text="{myCity>name}"/>
<Label text="{myCity>age}"/>
</VBox>
</CustomListItem>
</List>
有关更多信息,请参阅。仅添加一件事以避免误解。在绑定路径的开头使用斜杠意味着它是一个绝对路径。因此,它从模型的根指向内部属性。如果不在开头使用斜杠,则它是一个相对路径
路径,因此此路径将以绑定上下文的路径作为前缀。因此,在您的列表中,CustomListItem模板中的所有绑定都应该相对绑定到您在items
聚合中指定的上下文路径。只需添加一件事,以避免误解。在绑定路径的开头使用斜杠意味着它是一个绝对路径。因此,它从模型的根指向内部属性。如果不在开头使用斜杠,则它是一个相对路径
路径,因此此路径将以绑定上下文的路径作为前缀。因此,在您的列表中,CustomListItem模板中的所有绑定都应该相对绑定到您在items
聚合中指定的上下文路径。