我们现有需要控制权限的地方大概有以下几个点:
-
入口控制,这点在配置文件中体现
-
数据接口控制, 这点体现在请求数据源以及对数据源做筛选的场景
-
视图展现控制,这点体现在视图层上根据权限情况控制视图内容的展现
function parseQuery(querystring){ | |
querystring = querystring.split('&'); | |
var query = {}; | |
for (var i = querystring.length - 1; i > -1; i--) { | |
var kv = querystring[i].split('='); | |
var key = decodeURIComponent(kv[0]); | |
query[key] = decodeURIComponent(kv[1]); | |
} | |
return query; | |
} |
// ub-ria/mvc/List.js | |
List.prototype.imp = null; | |
/** | |
* @params {er/Action} imp | |
*/ | |
List.prototype.setImp = function (imp) { | |
this.imp = imp; | |
} |
ioc.addInterceptor( | |
{ | |
// add 方法会在注册组件前(addComponent)调用, | |
// 会传入 ioc 实例以及当前要注册的组件配置, | |
// 在此方法中可以自由的修改配置或者创建一个新的配置,最终必须得返回一个配置对象给 ioc, | |
// ioc 会用返回的配置对象作为当前正在注册的组件配置。 | |
add: function(ioc, config) { | |
if(config.$dom) { | |
config.$dom = document.getElementById(config.$dom); |