【发布时间】:2016-04-06 07:16:12
【问题描述】:
我有两个 XML 视图,我可以使用路由在它们之间导航。在第一个视图中,我有一个工作日列表,在第二个视图中,我有一个与工作日相关的膳食列表。我想做的事情:如果我将 URL 中的工作日 ID 更改为 8,例如,我想显示 Not found 页面。这是我的控制器,不知道能不能用_onBindingChange函数:
sap.ui.define([
"sap/ui/demo/nav/controller/BaseController"], function(BaseController) {
"use strict";
return BaseController.extend("sap.ui.demo.nav.controller.DETAIL", {
onInit: function() {
var oRouter = this.getRouter();
oRouter.getRoute("meal").attachMatched(this._onRouteMatched, this);
},
_onRouteMatched: function(oEvent) {
var oArgs, oView;
oArgs = oEvent.getParameter("arguments");
oView = this.getView();
var oTable = oView.byId("mealListID");
var listbinding = oTable.getBinding("items");
var oFilter = new sap.ui.model.Filter("dayId", sap.ui.model.FilterOperator.EQ, oArgs.dayId);
listbinding.filter([oFilter]);
},
_onBindingChange: function(oEvent) {
// No data for the binding
if (!this.getView().getBindingContext()) {
this.getRouter().getTargets().display("notFound");
}
}
});});
【问题讨论】:
-
您应该在问题中在此处发布代码,而不仅仅是指向其他地方的整个代码库。指向其他网站的链接会随着时间的推移而停止工作,这个问题将不再有意义。
标签: javascript data-binding binding sapui5