Sapui5 获取XML片段中定义的控件ID

Sapui5 获取XML片段中定义的控件ID,sapui5,Sapui5,我有一个片段,有很多输入字段。我想检查输入文本的输入字段的ID。当我执行oEvent.getSource().getId()时, 我得到了“someId controlId”。我不确定那个“someId”是什么。但是在“-”之后肯定是“controlId”。有谁能建议如何将控件ID与我获得的输出分开,或者如何在控制器中提取控件ID?全局ID的创建方式。此外,这就是当前在ID段之间使用分隔符的方式: 组件追加“--” 视图附加“--” 控件/元素追加“-”(例如,对于通过聚合绑定克隆的实例)

我有一个片段,有很多输入字段。我想检查输入文本的输入字段的ID。当我执行
oEvent.getSource().getId()
时,
我得到了
“someId controlId”
。我不确定那个
“someId”
是什么。但是在
“-”之后肯定是
“controlId”
。有谁能建议如何将控件ID与我获得的输出分开,或者如何在控制器中提取控件ID?

全局ID的创建方式。此外,这就是当前在ID段之间使用分隔符的方式:

  • 组件追加
    “--”
  • 视图附加
    “--”
  • 控件/元素追加
    “-”
    (例如,对于通过聚合绑定克隆的实例)
样本输出:

"componentId---viewId--controlId-__clone0"
分隔符的数量、插入方式,甚至用于分隔每个段的字符在以后的版本中可能会发生变化。事实上,中有一条警告,不要依赖当前语法:

不要依赖于特定的前缀语法,因为它可能会在某个时候发生变化

更糟糕的是,在
id
定义中确实使用了这样的分隔符时,不会抛出错误。假设分隔符可能包含在
id
定义中,则从全局id中提取正确的部分会变得更加困难和不可预测

为了使每个控件可以区分,更好的方法是添加


非常感谢你。我现在更明白了。我将使用cust数据。我在网上读了一些博客,早些时候甚至感到更加困惑。现在我明白了。@我现在刚读到那篇评论。老实说,我不太喜欢博客文章,因为它们很少被维护,有时甚至是不正确的。我建议坚持,若遇到错误。
<Input change=".onChange">
  <customData>
    <core:CustomData key="is" value="A" />
  </customData>
</Input>
<Input change=".onChange">
  <customData>
    <core:CustomData key="is" value="B" />
  </customData>
</Input>
<Input change=".onChange">
  <customData>
    <core:CustomData key="is" value="C" />
  </customData>
</Input>
onChange: function(oEvent) {
  const inputIsFrom = oEvent.getSource().data("is"); // returns: "A", "B", or "C"
  // ...
},