Skip to content

Instantly share code, notes, and snippets.

@Exodia
Exodia / aop.md
Last active August 31, 2015 06:47
对通用业务模块权限控制的一些思路

现状

我们现有需要控制权限的地方大概有以下几个点:

  1. 入口控制,这点在配置文件中体现

  2. 数据接口控制, 这点体现在请求数据源以及对数据源做筛选的场景

  3. 视图展现控制,这点体现在视图层上根据权限情况控制视图内容的展现

@Exodia
Exodia / interceptor.js
Last active August 29, 2015 14:17
ioc interceptor
ioc.addInterceptor(
{
// add 方法会在注册组件前(addComponent)调用,
// 会传入 ioc 实例以及当前要注册的组件配置,
// 在此方法中可以自由的修改配置或者创建一个新的配置,最终必须得返回一个配置对象给 ioc,
// ioc 会用返回的配置对象作为当前正在注册的组件配置。
add: function(ioc, config) {
if(config.$dom) {
config.$dom = document.getElementById(config.$dom);
@Exodia
Exodia / customBridge.js
Created July 2, 2014 15:20
业务继承桥接实现
// ub-ria/mvc/List.js
List.prototype.imp = null;
/**
* @params {er/Action} imp
*/
List.prototype.setImp = function (imp) {
this.imp = imp;
}
@Exodia
Exodia / query.js
Last active August 29, 2015 14:02
parse query string to object
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;
}