Javascript Sapui5:模型没有被破坏

Javascript Sapui5:模型没有被破坏,javascript,sapui5,Javascript,Sapui5,在以下代码中,我尝试销毁JSON模型(如果存在): if(sap.ui.getCore().getModel("modelId")){ console.log(sap.ui.getCore().getModel("modelId")); sap.ui.getCore().getModel("modelId").destroy(); }; 但上述模型并未被破坏 上述模型在另一个函数中设置,如下所示: var oModel = new sap.ui.model.json.JSONM

在以下代码中,我尝试销毁JSON模型(如果存在):

if(sap.ui.getCore().getModel("modelId")){
    console.log(sap.ui.getCore().getModel("modelId"));
    sap.ui.getCore().getModel("modelId").destroy();
};
但上述模型并未被破坏

上述模型在另一个函数中设置,如下所示:

var oModel = new sap.ui.model.json.JSONModel();
oModel.setData(oData);
sap.ui.getCore().setModel(oModel, "modelId");
console.log(sap.ui.getCore().getModel("modelId"));
记录如下:

第一个片段(我试图破坏模型的地方):

第二个代码段(其中设置了模型):

我错过了什么?为什么日志如此不同

这方面的主要问题是,我试图销毁该模型,但它不起作用。

我检查了API,它说模型实现可能会干扰销毁功能。 我的模型也有同样的结果,当我试图删除它时,删除的只是绑定,而不是整个模型

var test = sap.ui.getCore().getModel("partnerDaten");
console.log(test);
if(test !== undefined){
    sap.ui.getCore().getModel("partnerDaten").destroy();
    this.getView('bearbeiten').getModel("partnerDaten").refresh(true);
    console.log(test);
};
这些是控制台日志

C.extend.constructor {mEventRegistry: Object, oData: Object, bDestroyed: false, aBindings: Array[46], mContexts: Object…}
C.extend.constructor {mEventRegistry: Object, oData: Object, bDestroyed: true, aBindings: Array[0], mContexts: Object…}

从上面的代码示例中可以看到。我会继续查找,但我猜不可能删除整个模型。

您是否确保“sap.ui.getCore().getModel(“modelId”)”实际返回一个模型?此对象是否具有属性“destroy()”?您可以使用console.log(sap.ui.getCore().getModel(“modelId”))执行此操作;如果你不知道的话。在SAP博客上找到了类似的thrad-。从core works中取消设置模型-在设置模型时,如果您没有给出任何名称,则使用
sap.ui.getCore().setModel()这将覆盖旧模型。因为您使用了一个名称,所以这次传递null。即
sap.ui.getCore().setModel(null,'userModel')
var test = sap.ui.getCore().getModel("partnerDaten");
console.log(test);
if(test !== undefined){
    sap.ui.getCore().getModel("partnerDaten").destroy();
    this.getView('bearbeiten').getModel("partnerDaten").refresh(true);
    console.log(test);
};
C.extend.constructor {mEventRegistry: Object, oData: Object, bDestroyed: false, aBindings: Array[46], mContexts: Object…}
C.extend.constructor {mEventRegistry: Object, oData: Object, bDestroyed: true, aBindings: Array[0], mContexts: Object…}