SapUI5:为什么会出现错误;无法读取属性';setText';“无效”的定义;论自定义控件

SapUI5:为什么会出现错误;无法读取属性';setText';“无效”的定义;论自定义控件,sapui5,Sapui5,我正在尝试扩展MessageStrip控件 首先,我创建了一个新文件来扩展它,而没有任何新参数 MessageStrip.js sap.ui.define(["sap/m/MessageStrip"], function (MessageStrip) { "use strict"; return MessageStrip.extend("com.sap.it.cs.itsdpphome.controller.fragments.MessageStrip", {

我正在尝试扩展MessageStrip控件

首先,我创建了一个新文件来扩展它,而没有任何新参数

MessageStrip.js

sap.ui.define(["sap/m/MessageStrip"],
    function (MessageStrip) {
    "use strict";
    return MessageStrip.extend("com.sap.it.cs.itsdpphome.controller.fragments.MessageStrip", {
        metadata: {
            properties: {
            },
            aggregations: {
            },
            events: {
            }
        },

        init: function () {
        },

        renderer:{}
    });
});
我还创建了一个从模型检索数据的xml文件:

<List  items="{msgData>/msgData}" >
<CustomListItem>
    <wt:MessageStrip
        text="{msgData>Text}"
        type="{msgData>Type}"
        showIcon="true"
        showCloseButton="false"
        customIcon="{msgData>customIcon}"
        class="sapUiMediumMarginBottom">
        <Link text="{msgData>linkText}"
            target="{msgData>linkTarget}"
            href="{msgData>linkUrl}" />
    </wt:MessageStrip>
</CustomListItem>
</List>

我可以用xml获取所有模型参数,除了“文本”参数

如果我删除
text=“{msgData>text}”
,则它将显示除文本之外的所有正确参数

但是当我添加
text=“{msgData>text}”
时,控制台显示 错误:

未捕获的TypeError:无法读取null的属性“setText”


为什么会发生这种情况?

您必须在自己的
init
中调用您基础的
sap.m.MessageStrip

init: function () {
    MessageStrip.prototype.init.call(this);
},

它应该能解决你的问题

您必须在自己的
init
中调用基础的
init
sap.m.MessageStrip

init: function () {
    MessageStrip.prototype.init.call(this);
},

它应该能解决你的问题

如果你在plunker中复制这个例子,我可以检查它如果你在plunker中复制这个例子,我可以检查它酷!工作很好,你能让我知道我怎样才能计算出这个吗@伊莱,我要好好看看!工作很好,你能让我知道我怎样才能计算出这个吗@伊莱,我去看看