2016-03-22 13 views
0

私は腐ったトマトのapiで検索で見つかった映画の総量を隠す必要があるので、この問題があります。クエリを入力するたびに、表示されるそれぞれのムービーごとに同じヘッダーが繰り返されます。私は一番上でそれを繰り返す必要があります。ここでは、私がJSFiddleでそれを行うことができないので、何が起こっているのかのイメージです。ここでAngularJSのRT API呼び出しからトータルムービーヘッダーを繰り返さないようにするにはどうすればよいですか?

<html ng-app="demoApp"> 
<head> 
    <title>demo</title> 
    <script src="angular.min.js"></script> 
    <script src="search.js"></script> 
</head> 
<body ng-controller="moviesController"> 
    <label for="q">Search Text</label> 
    <input type="text" id="q" ng-model="data.q" ng-model-options="{debounce: 500}"/> 

    <label for="page_limit">Page Size</label> 
    <input type="text" id="page_limit" ng-model="data.page_limit" ng-model-options="{debounce: 500}"/> 

    <label for="page">Page Number</label> 
    <input type="text" id="page" ng-model="data.page" ng-model-options="{debounce: 500}"/> 

     <div class="movie" ng-repeat="movie in movies"> 
       <h1>Total movies: {{totalMovies}}</h1>  
      <div>    
       <img src="{{movie.posters.thumbnail}}" /> 
       <h2>{{movie.title}}</h2> 
      </div> 
      <div> 
       <p>{{movie.synopsis}}</p> 
       <dl> 
        <dt>Rating</dt> 
        <dd>{{movie.mpaa_rating}}</dd> 

        <dt>Year</dt> 
        <dd>{{movie.year}}</dd> 

        <dt>Critics Score</dt> 
        <dd>{{movie.ratings.critics_score}}</dd> 

        <dt>Audience Score</dt> 
        <dd>{{movie.ratings.audience_score}}</dd> 

        <dt>Theater Release Date</dt> 
        <dd>{{movie.release_dates.theater}}</dd> 

        <dt>DVD Release Date</dt> 
        <dd>{{movie.release_dates.dvd}}</dd> 
       </dl> 
      </div> 
     </div> 
</body> 
</html> 

angular.module('demoApp', []) 
    .constant('apiKey', 'removed for security') 
    .constant('apiUrl', 'http://api.rottentomatoes.com/api/public/v1.0/movies.json') 
    .controller('moviesController', function ($scope, $http, apiUrl, apiKey) { 
     $scope.data = {} 

     $scope.$watchGroup(['data.q', 'data.page_limit', 'data.page'], function() { 
      $http.jsonp(apiUrl, { 
       params: { 
        q: $scope.data.q, 
        page_limit: $scope.data.page_limit, 
        page: $scope.data.page, 
        apikey: apiKey, 
        callback: 'JSON_CALLBACK' 
       } 
      }).then(function (response) { 
       $scope.movies = response.data.movies; 
     //Call total movies 
       $scope.totalMovies = response.data.total; 
      }); 
     }); 
    }); 

答えて

1

ちょうどインデックスチェック私のangularJSコードです:

<h1 ng-if="$index == 0">Total movies: {{totalMovies}}</h1>  
+0

これは機能します。そんなにシンプルなものだとは信じられない。どうもありがとうございました。 :) – HawkBlade124

0

移動ngRepeatの外を見出し、合計映画を は、ここに私のHTMLコードです。

<h1>Total movies: {{totalMovies}}</h1>  
<div class="movie" ng-repeat="movie in movies"> 
    <!-- movie stuff --> 
関連する問題