博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AngularJS中的http请求默认为异步的,请问如何设置为同步请求呢?--使用$q
阅读量:4096 次
发布时间:2019-05-25

本文共 1435 字,大约阅读时间需要 4 分钟。

在工作时遇到这样一个问题,在保存数据时,需要对保存的数据进行多次校验(与后台交互的校验),如果校验成功则执行保存操作,如果不成功则返回提示。话不多说,直接上代码

 

var checkFun1 = function () {    return $q(function (resolve,reject) {        $http.post('product/checkSellingPriceLessThanCostPrice',salePolicy).success(function (response) {            if(response.result === 'success'){                resolve(response.data);            }else{                reject();            }        });    });};var checkFun2 = function () {    return $q(function (resolve,reject) {        $http.post('product/checkSellingPriceMoreThanGuidePrice',salePolicy).success(function (response) {            if(response.result === 'success'){                resolve(response.data);            }else{                reject();            }        });    });};var checkFun3 = function () {    return $q(function (resolve,reject) {        $http.post('product/checkSellingPriceOutOfPriceRange',salePolicy).success(function (response) {            if(response.result === 'success'){                resolve(response.data);            }else{                reject();            }        });    });};// 注意:城管提交时,如果不满足条件则不能提交,系管不满足条件只用提示即可,仍然可以提交$q.all([checkFun1(), checkFun2(), checkFun3()]).then(function (data) {    var invalidNum = 0;    //data存储的时校验返回的信息    data.forEach(function (item) {        if(item){            invalidNum++;        }    });    if(invalidNum === 0){//当校验全部通过时执行保存操作        $scope.modifyProductSubmit(salePolicy);    }});

 

 

 

转载地址:http://btqii.baihongyu.com/

你可能感兴趣的文章
注册表修改DOS的编码页为utf-8
查看>>
matplotlib.pyplot.plot()参数详解
查看>>
拉格朗日对偶问题详解
查看>>
MFC矩阵运算
查看>>
最小二乘法拟合:原理,python源码,C++源码
查看>>
ubuntu 安装mysql
查看>>
Win32编程绘图实例--字母图
查看>>
c# 计算器
查看>>
C# 简单的矩阵运算
查看>>
gcc 常用选项详解
查看>>
c++输入文件流ifstream用法详解
查看>>
c++输出文件流ofstream用法详解
查看>>
字符编码:ASCII,Unicode 和 UTF-8
查看>>
QT跨MinGW和MSVC两种编译器的解决办法
查看>>
firewalld的基本使用
查看>>
Linux下SVN客户端使用教程
查看>>
i2c-tools
查看>>
Linux分区方案
查看>>
nc 命令详解
查看>>
如何使用 systemd 中的定时器
查看>>