2016-07-07 66 views
1

我有2个html页面和一个app.js如何为2个不同的html页面使用相同的ng-app?

我搜索movie.html代码如下所示:

<!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中)

我在两个html页面中使用相同的ng-app。我想在其他按钮上工作(如此主页按钮)

我在哪里做错了?或者我该如何解决这个错误?

+0

但我用一个ng-app - 不是多个ng-app。 @AlonEitan – eagle

+0

剔除我的投票。对不起, –

+1

你使用什么路由?我没有看到任何'ng-view'或路由 – batmaniac7

回答

0

您不必:

<script src="app/app.js"></script> 
在结果-movie.html页

。然而,更大的问题是,你为什么要像这样构造它? Angular被设计成一个单页面应用程序(SPA)框架。我认为你将长期面临很多问题。

+0

我加了,但还是不行。你是对的,但我应该有2个不同的HTML页面。我还能怎么办? @Lex – eagle

0

我注意到,你不包括result-movie.html

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

为最好的办法是你可以使用ngRoute在控制器之间传递数据

相关问题