如何告诉SAP UI5声明式编译器不要在视图上使用addContent,而是使用placeAt



我有一个视图定义如下:

<template data-controller-name="MyController">
  <div class="circle colorBlack"><span data-sap-ui-type="sap.ui.commons.Label" id="percentPointsWon">48</span>%</div>                       
</template>

调用视图后的结果代码如下所示:

<div class="circle colorBlack"><span></span>%</div>
<label id="pointsWonOnServeView--percentPointsWon" data-sap-ui="pointsWonOnServeView--percentPointsWon" style="" class="sapUiLbl sapUiLblNowrap">50</label>

问题是,label元素没有插入到span中,而是插入到视图代码的末尾。

查看源代码(sap/ui/core/declarativessupport -dbg.js),当查看这些行时,这是显而易见的:

if (oView && !isRecursive) {
    oView.addContent(oControl);
} else {
    oControl.placeAt(oElement);
}

我怎样才能强制控件不是放在视图代码的末尾,而是放在声明元素的末尾呢?看看代码,我假设oView必须为空,但我如何执行呢?

HTML视图中的所有内容都将被声明为div

<div class="circle colorBlack"><div data-sap-ui-type="sap.ui.commons.Label" id="percentPointsWon">48</div>%</div>

最新更新