Javascript angularjs中的多个图像上载错误

Javascript angularjs中的多个图像上载错误,javascript,angularjs,node.js,image-uploading,Javascript,Angularjs,Node.js,Image Uploading,我在AngularJS上上传多张图片时遇到了一个问题。这是我的代码和我得到的错误 $scope.saveFile = function(file) { return Upload.upload({ url: CONFIG.apiUrl + '/fileupload', data: { fileUpload: file } }).success(function(data) { console.log("RSPPPPPPP", data.file

我在AngularJS上上传多张图片时遇到了一个问题。这是我的代码和我得到的错误

$scope.saveFile = function(file) {
  return Upload.upload({
    url: CONFIG.apiUrl + '/fileupload',
    data: {
      fileUpload: file
    }
  }).success(function(data) {
    console.log("RSPPPPPPP", data.file._id);
    $scope.photoId = data.file._id;
    console.log("sdvfbghjm,kjhgfdsa", $scope.photoId);
  })
  return $scope.saveFile;
  //}       
};

$scope.Addprojects = function(prodetails) {
  if (prodetails.image1_id) {
    $scope.prodetails.file.push(prodetails.image1_id);
    //console.log("image1", prodetails.file);
  }
  if (prodetails.image2_id) {
    $scope.prodetails.file.push(prodetails.image2_id);
    //console.log("image2", prodetails.file);
  }
  //console.log(prodetails.file.length);
  if (prodetails.file.length == 2) {
    alert(prodetails.file.length);
    $scope.saveFile(prodetails.file[0]).then(function(res) {
      console.log("poooototot", res);
      $scope.saveFile(prodetails.file[1]).then(function(res) {
        $scope.Addprojectsimg(prodetails);
        console.log("", Addprojectsimg);
        alert('hai');
      });
    });
  } else if (prodetails.file.length == 1) {
    $scope.saveFile(prodetails.file[0]).then(function(res) {
      alert("ok");
      $scope.Addprojectsimg(prodetails);
    });
  } else {
    $scope.Addprojectsimg(prodetails);
  }
};

$scope.Addprojectsimg = function(prodetails){

                        console.log("projectadding",prodetails,$scope.photoId);
                        prodetails.image1_id= $scope.photoId;
                        console.log("SUB",prodetails);
                        $http.post(CONFIG.apiUrl+"/projectsubmit", prodetails).success(function(data, status) {
                        console.log("prorespons",data);
                        alert("images uploaded sucessfully");

                        })

                };
错误

错误:$scope.saveFile(…)。then不是函数 addprojectctrl/$scope.Addprojects@ 匿名/fn@line 13365>函数:2:332 恩格文坦德勒/http://192.168.3.40:8081/2016/ANGULAR2016/ang-社交/bower_components/angular/angular.js:23613:17 $RootScopeProvider/this$gethttp://192.168.3.40:8081/2016/ANGULAR2016/ang-社交/bower_components/angular/angular.js:16052:16 $RootScopeProvider/this$gethttp://192.168.3.40:8081/2016/ANGULAR2016/ang-社交/bower_components/angular/angular.js:16152:20
ngEventHandler/您的
$scope.saveFile
函数没有返回承诺,应该是这样的:

$scope.saveFile = function(file) {
    return Upload.upload({
        url: CONFIG.apiUrl+'/fileupload',
        data: {fileUpload: file}
    }).success(function(data){
        console.log("RSPPPPPPP",data.file._id);
        $scope.photoId = data.file._id;
        console.log("sdvfbghjm,kjhgfdsa",$scope.photoId);

    });
};

您的
$scope.saveFile
函数没有返回承诺,应该是这样的:

$scope.saveFile = function(file) {
    return Upload.upload({
        url: CONFIG.apiUrl+'/fileupload',
        data: {fileUpload: file}
    }).success(function(data){
        console.log("RSPPPPPPP",data.file._id);
        $scope.photoId = data.file._id;
        console.log("sdvfbghjm,kjhgfdsa",$scope.photoId);

    });
};

在AngularJS中,承诺
$q
和使用其他接口的
$http
之间存在这种差异。更多信息:在AngularJS中,
$q
和使用其他接口的
$http
之间存在这种差异。更多信息请点击此处: