宝哥软件园

Angularjs注入拦截器实现装货效果

编辑:宝哥软件园 来源:互联网 时间:2021-09-19

angularjs作为一个全创建交互式、快速动态网页应用的网页开发技术的框架,对于请求,如果页面上不做任何操作的话,在结果烦回来之前,页面是没有任何响应的,不像普通的超文本传送协议请求,会有进度条之类。

什么是拦截器?

$ httpProvider中有一个拦截器数组,而所谓拦截器只是一个简单的注册到了该数组中的常规服务工厂。下面的例子告诉你怎么创建一个拦截器:

!-lang : js-模块。factory(' myInterceptor ',['$log ',function($ log){ $ log。调试($日志在这里向您展示这是一个带有注入的常规工厂');var myInterceptor={..};返回myInterceptor }]);然后通过它的名字添加到$ .拦截器数组:

!-lang : js-模块。config([' $ http provider ',function($ http provider){ $ http provider。拦截器。push('我的拦截器');}]);先给大家展示下效果图:

本文通过对超文本传送协议(Hyper Text Transport Protocol的缩写)视频注入拦截器实现装货。

超文本标记语言代码

div class=' loading-model model ' ng-if=' loading ' div class=' loading ' img src=' http :=$this-module-getAssetsUrl()?/img/正在加载。gif ' alt=' '/span ng-bind=' loading _ text '/span/div/div CSS代码。模态{位置:固定;宽度: 100%;高度: 100%;左: 0;top : 0;z指数: 99;background: rgba(0,0,0,0.3);飞越:隐藏;}.加载{位置:绝对值;前:名50%;背景:白色;#解决方案。边界半径(8px);宽度: 160像素;高度: 72px左侧: 50%;边距-top :-36px;左边距:-80px;文本对齐:中心;img { margin-top : 12px;文本对齐:中心;} span { display:块;}}js代码

app.config(['$routeProvider ',' $ http provider ',function ($routeProvider,$ http provider){ $ RouteProvider。when('/',{ templateurl : '/view/提醒/index.html ',控制器: ' index controller ' });$routeProvider.when('/create ',{ Templateurls : '/view/提醒/item/create.html ',controller : ' ItemCreatecontroller ' });$routeProvider。否则({ redirectto : '/' });$ httprovider。拦截器。push(' timestampMarker ');}]);//正在加载应用程序。工厂(' timestampMarker ',['$rootScope ',函数($ rootScope){ var timestampMarker={ request : function(config){ $ rootScope。loading=trueconfig.requestTimestamp=新日期()。getTime();返回配置;},响应:函数(响应){//$ RootScope。loading=false回应。配置。responsetimestamp=新日期()。getTime();返回响应;} };return timestampMarker }]);拦截器允许你:

通过实现请求方法拦截请求: 该方法会在$http发送请求道后台之前执行,因此你可以修改配置或做其他的操作。该方法接收请求配置对象(请求配置对象)作为参数,然后必须返回配置对象或者承诺。如果返回无效的配置对象或者承诺则会被拒绝,导致$http调用失败。

通过实现反应方法拦截响应: 该方法会在$http接收到从后台过来的响应之后执行,因此你可以修改响应或做其他操作。该方法接收响应对象(响应对象)作为参数,然后必须返回响应对象或者承诺。响应对象包括了请求配置(请求配置),头(标题),状态(状态)和从后台过来的数据(数据).如果返回无效的响应对象或者承诺会被拒绝,导致$http调用失败。

通过实现请求错误方法拦截请求异常: 有时候一个请求发送失败或者被拦截器拒绝了。请求异常拦截器会俘获那些被上一个请求拦截器中断的请求。它可以用来恢复请求或者有时可以用来撤销请求之前所做的配置,比如说关闭进度条,激活按钮和输入框什么之类的。

实现responseError方法来拦截响应异常:有时我们的后台调用会失败。也有可能被请求拦截器拒绝或被最后一个响应拦截器中断。在这种情况下,响应异常拦截器可以帮助我们恢复后台调用。

更多资讯
游戏推荐
更多+