http GET请求基于angularjs中的true或false条件

时间:2017-04-10 11:26:23

标签: angularjs angular-http

所以基本上我想在四个条件满足时调用所有帖子。

最初,

a=false,
b=false,
c=false,
d=false

当用户选择这些选项时,这些选项将转为true

例如:当用户选择a然后选择a=true

根据这个条件,我想发一个http.get请求。 像这样的东西

`listAllPosts(a,b,c,d){

GET /posts?a=true }

每当一个或多个变量变为真时,我需要根据条件发出GET请求。

抱歉说不好。

2 个答案:

答案 0 :(得分:1)

我相信a,b,c和d与复选框相关联。然后,您可以执行以下操作:

HTML:

<div>
    <input type="checkbox" ng-change="sendRequest()" ng-model="a" />
    <input type="checkbox" ng-change="sendRequest()" ng-model="b" />
    <input type="checkbox" ng-change="sendRequest()" ng-model="c" />
    <input type="checkbox" ng-change="sendRequest()" ng-model="d" />
</div>

控制器:

$scope.a = false;
$scope.b = false;
$scope.c = false;
$scope.d = false;

$scope.sendRequest = function () { 
    if ($scope.a || $scope.b || $scope.c || $scope.d ) { 
        // Get request here
    }
}

如果问题,请告诉我。

答案 1 :(得分:0)

所以基本上你需要一个监视表达式来查看所有四个变量。当组合表达式为1(真实)时,您想要进行ajax调用

  $scope.a = false;
  $scope.b = false;
  $scope.c = false;
  $scope.d = false;
  $scope.$watch(function(){
    return $scope.a + $scope.b + $scope.c + $scope.d;
  }, function(newVal, oldVal) {
    if( newVal === 1 ) {
        console.log('do ajax call here');
    } 
  })