2016-11-27 9 views
0

角の$ http関数を使って画像ファイルをアップロードし、背景でmulterを使ってフォームをアップロードしようとしています。私は(角なし)に直接フォームを送信する方法を知って、私は成功した経由でアップロードすることができます。このように

<form method="post" enctype="multipart/form-data"> 
     <input type="file" name="avatar" /><br/> 
     <input type="submit" value="submit"/><br/> 
    </form> 

、画像はreq.fileになります。しかし 、私はそれをアップロードするために、角HTTPを使用しよう:

<form name="myForm" ng-model="formData" enctype="multipart/form-data"> 
     <input type="file" file-model="avatar" name="avatar" required/><br/> 
     <label class="item item-input"> 
      <button class="button button-block button-positive" ng-click="submit()" class="btn btn-primary btn-block">submit</button> 
     </label> 
     <label class="item item-input"> 
      <button class="button button-block button-dark" ng-click="home()" >back</button> 
     </label> 
    </form> 

JS:

$scope.submit = function() { 
     var fd = new FormData(); 
     fd.append('avatar', $scope.avatar); 
     $http({ 
      url:'/avatar', 
      method: 'POST',    
      data: fd, 
      headers: { 
       'Content-Type': 'undefined' 
      }, 
      transformRequest: angular.identity  
     }).success(function(data,status){ 
      if(status == 200) { 
       window.location = '/home'; 
      } 

     }).error(function(status, data){ 
      window.location = '/avatar'; 
     }) 
    } 

不定となりreq.fileフィールド。どのように私のイメージを角度$ httpでアップロードするのですか?

答えて

0

"ファイルモデル"ディレクティブは、角度の一部ではありません。あなたは依存関係を含めましたか? https://github.com/ghostbar/angular-file-model

+0

はい、ただし、req.fileはまだ未定義です... – pousT