我有一个具有许多级别和属性的大型模型,我想在我的XML视图中有一个Input,它将始终从模型中编辑1个属性,但是每次它将是一个不同的属性。
我想编辑以下路径上的示例属性:
myModel>/user/0/surname
myModel>/user/1/name
myModel>/user/2/nickname
myModel>/user/3/email
假设我们现在对编辑用户nr2的昵称感兴趣,因此我将其路径保存到变量中:
myModel.setProperty("currentlyEditedPath", "myModel>/user/2/nickname");
我想这样定义我的输入:
<Input value="{myModel>/currentlyEditedPath}" >
发生的事情是,UI5允许我自行编辑字符串“ myModel> / user / 2 / nickname”。但是它是错误的。我只想将字符串用作对模型中其他应修改和更新的其他值的引用。我可能应该这样写,但是我找不到正确的方法:
<Input value="{ ${myModel> ${myModel>/currentlyEditedPath} } } " >
有什么想法吗? .. 尽可能简单。最好的内联。
答案 0 :(得分:0)
我认为Element绑定是个好方法。随时对此发表评论:
var oInput = sap.ui.core.Fragment.byId("myFragmentID","myInputID");
oInput.bindElement("myModel>/user/2");
oInput.bindProperty("value", "myModel>nickname");
或者我也可以将值放入XML:
<Input value="{myModel>nickname}" >