Sapui5 设置好另一个模型后,获取并设置默认模型
我的问题是在manifest.json文件中有一个默认模型被指定为“” 不过,我还在控制器中设置视图模型Sapui5 设置好另一个模型后,获取并设置默认模型,sapui5,Sapui5,我的问题是在manifest.json文件中有一个默认模型被指定为“” 不过,我还在控制器中设置视图模型 var oModel = new JSONModel({ questions: [{ order: 1, title: "", criteria: "", }] }); this.getView().setMode
var oModel = new JSONModel({
questions: [{
order: 1,
title: "",
criteria: "",
}]
});
this.getView().setModel(oModel);
如何将视图模型恢复为默认模型
这只是一个简单的例子吗
this.getView().setModel("");
我这样问是因为默认模型是包含我所有读/写操作的服务。解决方案是以初始化和访问附加模型的方式,但命名它并将其称为“viewmodel” 这样,默认模型仍然可以使用
oModel = this.getView().getModel();
在控制器中:
this.getView().setModel(oModel,"viewmodel");
var oContext = oModel.createBindingContext("/questions/0/");
this.getView().setBindingContext(oContext,"viewmodel");
他认为:
title="Question {viewmodel>order}"
您应该在设置默认模型之后设置命名模型
var oModel = new JSONModel({
questions: [{
order: 1,
title: "",
criteria: "",
}]
});
this.getView().setModel(oModel,"newModelName");
现在您可以通过以下方式获得默认模型:
this.getView().getModel()
并将json模型命名为
this.getView().getModel("newModelName");
使用
setModel(oModel,'myName')
您可以同时拥有多个;这意味着无论我如何设置属性,它们在视图中都不再可用。。{order},{viewModel>order}{viewModel>/order>我还在为模型分配一个上下文-var oContext=oModel.createBindingContext(“/questions/0/”);this.getView().setBindingContext(oContext);表或列表中的循环是{viewModel>/questions}/code>,行中的属性是{viewModel>order}
。不要在任何内容上设置上下文