2016-04-07 11 views
0

私はAngularJSから安らかなサービスを呼んでいます。 HTMLは非常に基本的なもので、入力用のテキストボックスとクエリー用のボタンがあります。AngularJSコールRest API:TypeError

// basic.html

<!DOCTYPE html> 
<html ng-app="cgApp" > 
    <head> 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular.min.js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular-resource.js"></script> 
    <script src="../js/controller.js"></script> 
    <script src="../js/service.js"></script> 

    </head> 
    <body> 
    <div ng-controller="CgseqCtrl"> 
     <input ng-model="analysisid"><button ng-click="searchById()">Search</button> 
     <table> 
      <tr> 
       <td>{{seq.analysisId}}</td> 
       <td>{{seq.center}}</td> 
       <td>{{seq.diseaseAbbr}}</td> 
       <td>{{seq.filepath}}</td> 
       <td>{{seq.library}}</td> 
      </tr> 
     </table>   
    </div> 
    </body> 
</html> 

私はボタンがクリックされるとsearchById()が実行されます

// service.js 
app.factory("Cgseq", function ($http) { 
    // return $resource('http://localhost:8080/cgweb/api/seqs/fdebfd6e-d046-4192-8b97-ac9f65dc2009'); 
    var service = {}; 
    service.getSeqById = function(analysisid) { 
     return http.get('http://localhost:8080/cgweb/api/seqs/' + analysisid); 
    } 


    service.getSeq = function() { 
     return $http.get('http://localhost:8080/cgweb/api/seqs/fdebfd6e-d046-4192-8b97-ac9f65dc2009'); 
    } 

    return service; 
}); 

機能を、残りのAPIを呼び出すためにサービスを使用します。私のコントローラに実装されています。

私は入力ボックスに何かを入力する前であっても、ブラウザでbasic.htmlをロードし、ボタンをクリックすると、私は次のエラーを得た
// controller.js 
var app = angular.module('cgApp', []) 

app.controller('CgseqCtrl', ['$scope', 'Cgseq', function($scope, Cgseq){ 
    $scope.searchById() = function() { 
     CgSeq.getSeqById($scope.analysisid) 
     .then(function(response){ 
      $scope.seq = response; 
     }); 
    } 
}]); 

angular.js:12416 TypeError: $scope.searchById is not a function 
    at new <anonymous> (controller.js:8) 
+1

$ scope.searchById = function(){....}これはあなたの問題を解決することを望みます。 –

答えて

2

あなたは()を削除する必要があります

$scope.searchById() = function

そしてCgseq IE用ミス(大文字と小文字の区別)を補正から

関連する問題