onScreenSubmitted系统事件的描述是
“在提交屏幕之前触发的事件,允许窗口小部件提示未保存的更改等”。
但我找不到任何关于如何实际停止提交内容的信息。如果您无法阻止丢弃更改,则能够通知用户他们有未保存的更改并不太有用。
答案 0 :(得分:3)
要取消提交屏幕,您需要有一个自定义操作窗口小部件,它只是将“false”返回到执行状态:
run: function(state) {
state.getExecutionState().setReturnValue(false);
}
然后在屏幕上你应该能够像你那样使用你的动作小部件(我称之为动作小部件“取消 - 事件”):
<when system-event="onBeforeScreenSubmit">
<if>
<confirm message="Are you sure you want to leave?" />
<else>
<cancel-event />
</else>
</if>
</when>