问了几个做前端的前同事,好像他们都对拦截器没什么概念。
举个例子,就是有些请求我需要在登陆之后做,那么写一个拦截器,拦截之后才做请求。那么写业务逻辑代码的时候就不用去想登陆怎么和当前的业务耦合了,直接拦截一下。这个对于业务解耦还是挺有用的,简单写了一下。
可以这样写:
var login = function (options) { ... //登陆逻辑什么的 var success = true; success ? options.success({ userInfo: userInfo}):options.fail(new LoginError()); }var isLogin = function () { return cache.getToken().length 0 && cache.isTokenValid()}var after = function (callback) { if (isLogin()) { callback(cache.getUid(), null); } else { login({ success: data = { callback(data.uid, null); }, fail: error = { callback(-1, error); } }) }}可以这样用:
login.after((uid, error) = { ... //业务代码})













