0

関数を一度呼び出すにはどうすればよいですか。私がそうすると、それを呼び出すとループします。HTML: コントローラーから関数を呼び出しています。インデックスの値を見つけます。

    <body ng-controller="MainCtrl">
       <div ng-repeat="id in arr">
    {{sendPost(id)}}
      </div>
    <br>
        {{namestr}}
    </body>

JS: 値の関数リクエスト サーバー

    app.controller('MainCtrl', function($scope, $http) {
    $scope.arr=[];
    $scope.arr.push(1);
    $scope.arr.push(2);
    $scope.arr.push(3);   
    $scope.namestr="";
    $scope.newName = "";
    $scope.sendPost = function(names) {
        $scope.namestr=$scope.namestr+' '+names;
        var data = $.param({
            json: JSON.stringify({
                name: names
            })
        });
        $http.post("/echo/json/", data).success(function(data, status) {
          //select from database
           if (data==1){
             return '1111'
           } else {
             return '2222'
           }
        })
    }                            
    });

http://plnkr.co/edit/Zhao5JuEeuG1KGXNhLS0?p=preview

4

1 に答える 1

1

これは一般的に悪い考えです

{{sendPost('Василий')}}

sendPost メソッドと一緒に http.post がすべての $digest プロセスで呼び出され、$digest はモデルの変更によってトリガーされるため、これは

$scope.hello = data;

別の $digest と別の http リクエストが発生します。達成したいことを詳しく説明してください。プランカーを拡張します

于 2014-10-20T09:47:56.220 に答える