dwz中权限的控制

很多人不明白用dwz要如何在没有登录的时候跳转到登录页面,没有权限的时候弹出提示。

其实,作者在设计的时候,已经完全考虑到了这些需求。

不管是navTab还是dialog,dwz的页面加载最终都是通过loadUrl函数来实现,打开loadUrl

 1                 success: function(response){
 2                     var json = DWZ.jsonEval(response);
 3                     if (json.statusCode==DWZ.statusCode.timeout){
 4                         alertMsg.error(DWZ.msg("sessionTimout"), {okCall:function(){
 5                             DWZ.loadLogin();
 6                         }});
 7                     } if (json.statusCode==DWZ.statusCode.error){
 8                         if (json.message) alertMsg.error(json.message);
 9                     } else {
10                         $this.html(response).initUI();
11                         if ($.isFunction(callback)) callback(response);

你会发现其实服务器端响应对于打开页面也是适用的,也就是打开navTab和dialog时,后台也可以返回JSON来控制加载,很多人不知道这点。

有了这个,权限控制就变得异常简单,如果没有登录,返回的json就设置statusCode为timeout,这样就会跳转到登录页面;如果没有权限,则设置statusCode为error,这样就能弹出提示框,这里可以扩展一下,因为这个时候虽然页面没有加载,但是navTab或者dialog还是打开了,加一句判断关闭就OK了。

原文地址:https://www.cnblogs.com/ImaY/p/4069642.html