2016-07-07 19 views
1

私は2 htmlページを持っており、一つは、次のよう2つの異なるHTMLページに同じng-appを使用するには?

私の検索-movie.htmlコードをapp.js:

<!DOCTYPE html> 
<html ng-app="adphorusWork"> 
<head lang="en"> 
    <meta charset="UTF-8"> 
    <title>Search Movie</title> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"> 
    <script src="scripts/angular.min.js"></script> 
    <script src="scripts/angular-route.min.js"></script> 
    <script src="scripts/jquery-1.9.1.min.js"></script> 
    <script src="app/app.js"></script> 
</head> 
<body ng-controller="searchMovieController"> 
    <div class="navbar navbar-default navbar-fixed-top" style="margin-top: 20px;"> 
     <div class="container-fluid"> 
      <ul> 
       <li> 
        <a href="http://www.omdbapi.com/">OMDb Api</a> 
       </li> 
      </ul> 
     </div> 
    </div> 
    <div class="container" style="margin-top: 50px;"> 
     <div class="bs-docs-section" id=""> 
      <div class="row"> 
       <div class="col-lg-12"> 
        <div class="page-header"> 
         <h2><a href="https://github.com/Cakmakk">My Github</a></h2> 
        </div> 
        <div class="bs-component"> 
         <form class="well form-search" id="search-movie" onsubmit="return false;"> 
          <fieldset> 
           <legend>Search Movie</legend> 
          </fieldset> 
          <div> 
           <label class="control-label" for="movie-name">Movie Name : </label> 
           <input type="text" id="movie-name" class="input-small" style="margin-left: 10px;"> 
           <button id="btn-search-movie" type="button" class="btn-sm btn-primary" style="margin-left: 10px;" ng-click="searchMovie()"> 
            <span class="glyphicon glyphicon-search"> Search</span> 
           </button> 
          </div> 
         </form> 
        </div> 
       </div> 
      </div> 
     </div> 
    </div> 
</body> 
</html> 

と、次のように私の結果-movie.htmlコード:

<!DOCTYPE html> 
<html> 
<head ng-app="adphorusWork"> 
    <meta charset="UTF-8"> 
    <title>Search Movie</title> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"> 
    <script src="scripts/angular.min.js"></script> 
    <script src="scripts/angular-route.min.js"></script> 
    <script src="app/app.js"></script> 
    <script src="scripts/jquery-1.9.1.min.js"></script> 
</head> 
<body ng-controller="resultMovieController"> 
    <div class="navbar navbar-default navbar-fixed-top" style="margin-top: 20px;"> 
     <div class="container-fluid"> 
      <ul> 
       <li> 
        <a href="http://www.omdbapi.com/">OMDb Api</a> 
       </li> 
      </ul> 
     </div> 
    </div> 
    <div class="container" style="margin-top: 50px;"> 
     <div class="bs-docs-section" id=""> 
      <div class="row"> 
       <div class="col-lg-12"> 
        <div class="page-header"> 
         <h2><a href="https://github.com/Cakmakk">My Github</a></h2> 
        </div> 
        <div class="bs-component"> 
         <fieldset> 
          <legend>Result for Search Movie</legend> 
         </fieldset> 
         <div> 
          <button id="btn-result-movie" type="button" class="btn-sm btn-primary" style="margin-top: 40px;" ng-click="backtohome()"> 
           <span class="glyphicon glyphicon-circle-arrow-left"> Home</span> 
          </button> 
         </div> 
        </div> 
       </div> 
      </div> 
     </div> 
    </div> 
</body> 
</html> 

と、次のように私のapp.js:

(function (angular) { 
    'use strict'; 

    var app = angular.module('adphorusWork', []); 

    app.controller('searchMovieController', function ($scope) { 
     $scope.searchMovie = function() { 
      alert("come") 
     } 
    }); 
    app.controller('resultMovieController', function ($scope) { 
     $scope.backtohome = function() { 
      alert("home") 
     } 
    }); 
})(angular); 

マイサーチ尻(search-movie.htmlで)動作していますが、私の 'ホーム'ボタンが機能しません(result-movie.html内)

2つのHTMLページで同じng-appを使用しています。私は他のボタンで作業したいので(ホームボタン)

どこが間違っていますか?またはこのエラーを修正するにはどうすればよいですか?

+0

ng-app - 複数のng-appではありません。 @AlonEitan – eagle

+0

私の投票を撤回しました。申し訳ありません。 –

+1

あなたはどのルーティングを使用していますか? 'ng-view'やルーティングが表示されません – batmaniac7

答えて

0

あなたは持っていません:あなたの結果-movie.htmlページで

<script src="app/app.js"></script> 

を。しかし、もっと大きな疑問は、あなたはなぜそれをこのように構造化しているのですか? Angularは、単一ページアプリケーション(SPA)フレームワークとして設計されています。あなたがそれを買っている方法では、長期的に多くの問題に終止符を打つつもりだと思います。

+0

私は追加しましたが、まだ動作しません。あなたはそうだけど、2つの異なるHTMLページがあるはずです。どうすればいいですか? @Lex – eagle

0

についての簡単な詳細を提供することができ、私はあなたがresult-movie.htmlページ内用として

<script src="app/app.js"></script> 

が含まれていないことに気づきましたコントローラ間を渡すデータにはngRouteを使用することをお勧めします。

関連する問題