0

我正在使用来自 WEB IDE(包括路由等)的 Master-Master-Detail 模板开发类似 SAP FIORI 的应用程序。在“详细信息”视图中有一些分段按钮,用户可以使用这些按钮来评估产品质量。

我需要在用户导航到其他详细信息(从 master2 列表中选择其他项目,或返回 master1 视图)之前检查是否选择了(更改)任何按钮。如果是,则应显示弹出窗口以确认退出而不保存结果。

我尝试在“master2”视图中使用“onSelect”功能,但是:

  1. 我现在不知道如何从当前详细信息中读取值(检查是否有任何更改(选择)),
  2. 如何防止在 master2 列表中选择“新”元素。

我应该在哪个视图中使用哪个事件?

4

1 回答 1

0

您需要执行以下操作:

1.捕捉变化

在按钮的更改/活动上,您需要在应用程序dataChanged级别设置标志(例如),以便您知道用户已在视图中编辑了某些内容。对于,您可以使用按下事件进行捕捉。 对于列表,请使用selectionChange事件。button// tap is deprecated

2.详细处理路由,也在master2视图中

详细& master2页利用onRouteMatched方法。在路由之前,您知道标志和路由名称。您可以执行所需的操作。例子:

onRouteMatched : function(oEvent) {     
    var sName = oEvent.getParameter("name");
//Open popup for confirmation based on sName and dataChanged values.. Better make this as reusable so that you can reuse.
}

请注意,正如您已经提到的,有两种可能性。用户导航到不同的主视图或导航主列表中的新项目2。这两种情况都必须处理。onRouteMatched是处理它的最佳位置。

于 2015-10-12T08:18:47.900 回答