Cre*_*er7 0 javascript lightswitch-2013
我有2套代码:
myapp.activeDataWorkspace.ProjectHandlerData.saveChanges();
2.刷新页面
window.location.reload();
Run Code Online (Sandbox Code Playgroud)
有没有办法让这两个一起工作在一个按钮,因为目前当我点击保存,浏览器识别更改和(你确定要离开页面)消息或这些行弹出的东西..
干杯
这是针对HTML客户端的,对吗?假设是这样的:
saveChanges()是一个异步操作,所以你想做:
myapp.activeDataWorkspace.ProjectHandlerData.saveChanges().then(function () {
window.location.reload();
});
Run Code Online (Sandbox Code Playgroud)
这样它将等到它重新加载屏幕之前保存更改完成.
但是,有一种更平滑的方式,至少从用户的角度来看,它更顺畅.在编辑屏幕上,保留Save方法,让LightSwitch处理它.当用户单击"保存"时,它将关闭编辑屏幕,然后返回到之前的位置.使用showScreen方法的options参数,我们可以更改该行为.
更改调用编辑屏幕的方法,如下所示:
myapp.showEditProject(screen.Project, {
afterClosed: function (editScreen) {
myapp.showViewProject(editScreen.Project);
}
});
Run Code Online (Sandbox Code Playgroud)
这样,在关闭编辑屏幕并且它已经为您处理了保存更改操作后,应用程序将自动导航到最近编辑的项目的详细信息视图屏幕.
如果您想要在添加新实体后刷新浏览屏幕:
myapp.showAddEditProject(null, {
beforeShown: function (addEditScreen) {
addEditScreen.Project = new myapp.Project();
},
afterClosed: function () {
screen.Projects.load();
}
});
Run Code Online (Sandbox Code Playgroud)
这两个选项,beforeShown和afterClosed,为您提供了许多影响应用程序导航的非常酷的功能.
| 归档时间: |
|
| 查看次数: |
3920 次 |
| 最近记录: |