组件开发
- 如何搭建light开发环境
- 如何创建组件开发工程
- 如何提高组件开发效率
- 如何运行调试组件
- 如何优化组件中的图片
- 如何优化前端工程当中的资源文件
- 如何组织组件的模块化开发
- 如何使用UI控件
- 如何自定义UI控件
- 如何在组件开发中使用jade
- 如何在组件开发中使用pug
- 如何在组件开发中使用Less
- 如何在组件开发中使用模板
- 如何在组件开发中使用ES6
- 如何在组件开发中实现过渡效果
- 如何在多个工程间共享资源
- 如何在使用postcss插件
- lighting开发排错指南
- 如何在框架中使用vue2.0
- 如何在框架中使用vue和vux组件
- 10分钟搞懂lighting插件开发
- 如何使用lighting拦截器
- 如何在组件开发中使用Sass
如何使用lighting拦截器
拦截器是lighting框架的一种路由过滤机制,和内置事件不同的是:拦截器具有阻断
能力!
拦截器API一般使用的场景主要有一下的几个方面:
- 登录会话校验
- 路由权限校验
- 视图数据注入
先来看一下简单的例子:
|
其中registerInterceptor
为拦截器注册的API,其接受两个入参:
type
,拦截器的类型,现阶段支持两种:view
/start
,view
是视图拦截器,start
是启动拦截器cb
,拦截处理函数,视图拦截器的处理函数接受三个入参,分别是:上一个视图/目标视图/处理成功的回调,而启动拦截器只接受一个入参,处理成功的回调
拦截器的处理机制是:当发生拦截行为的时候会调用用户定义的拦截器处理函数,如果处理函数处理成功并调用了next()
则继续处理下一个拦截器,知道拦截器链路中的处理函数都处理了此阶段,如果没有拦截器处理失败(也就是都执行了next)则正常发生路由行为,否则中断!
注:对start/view的拦截器注册应该在Light.start之前;