sap – 使用具有声明性html视图的html片段

我正在尝试将大型html视图分解为更小,更易于管理的块.

是否可以使用片段来做到这一点?

例如,我有一个包含以下内容的片段文件(view.configurator.Summary.fragment.html):

<div data-sap-ui-type="sap.m.Button" data-text="Hello"></div>

在我的父文件中,我尝试按如下方式包含片段:

<div data-sap-ui-type="sap.m.VBox" class="summary-panel-content">

                <div data-sap-ui-type="sap.ui.core.Fragment"
                     data-fragment-name="view.configurator.Summary" 
                     data-type="HTML"></div>

            </div>

但是我在控制台中收到以下错误

Please provide a fragment name

有任何想法吗?

谢谢,

碣.

编辑:似乎它是一个错误,但您可以通过将片段包装在自定义控件中来解决

sap.ui.core.Control.extend("sap.mic.controls.Fragment",{

    Metadata: {
        properties: {
            "name": "string"
        }
    },init: function () {
    },renderer: function (renderManager,control) {
        var fragmentName = control.getProperty("name"),fragment = sap.ui.htmlfragment(fragmentName);

        renderManager.renderControl(fragment);
    }
});

像这样使用:

<div data-sap-ui-type="sap.m.Page" data-enable-scrolling="false">

    <div data-sap-ui-type="sap.mic.controls.Fragment"
         data-name="view.configurator.Summary"></div>

</div>

解决方法

在XML-View中

您必须将此命名空间添加到XML-Header中:

xmlns:mvc="sap.ui.core.mvc"

然后包含以下视图:

<mvc:XMLView viewName="your.namespace.ViewName"></mvc:XMLView>

在HTML视图中

您可以包含以下视图:

<div data-sap-ui-type="sap.ui.core.mvc.HTMLView" data-view-name="your.namespace.ViewName"></div>

XML视图中的XML片段

<core:Fragment id="xmlInXml" fragmentName="my.useful.SimpleUiPart" type="XML" />

相关文章

Mip是什么意思以及作用有哪些
怎么测试Mip页面运行情况
MIP安装的具体步骤有哪些
HTML添加超链接、锚点的方法及作用详解(附视频)
MIP的规则有哪些
Mip轮播图组件中的重要属性讲解