2017-02-19 52 views
1

Angular控制器在索引頁面中工作正常,但是當我從鏈接頁面調用它們時,它們不起作用。我需要怎樣處理控制器才能夠使用頁面?無法在Phonegap Framework7的新頁面上調用Angular Controller7

我的索引頁面定義了應用程序。

<html ng-app="MyApp"> 

我鏈接的外部頁面,如:

Click <a href="about.html">here</a> to go to About 

在關於頁面我有:

<script type="text/javascript" src="js/controller/MyAboutPageController.js"></script> 
<div class="navbar"> 
    <div class="navbar-inner"> 
     <div class="left"> 
      <a href="#" class="back link"> 
       <i class="icon icon-back"></i> 
       <span>Back</span> 
      </a> 
     </div> 
     <div class="center sliding">About</div> 
     <div class="right"> 
      <a href="#" class="link icon-only open-panel"><i class="icon icon-bars"></i></a> 
     </div> 
    </div> 
</div> 
<div class="pages"> 
    <div data-page="about" class="page"> 
     <div class="page-content"> 
      <div class="content-block" ng-controller="MyAboutPageController"> 
       <p>Here is About page!</p> 
       {{name}} 
      </div> 
     </div> 
    </div> 
</div> 

我試着用MyApp.angular.controller(MyApp.controller(,雙方不工作。此外,我包括<script type="text/javascript" src="js/controller/MyAboutPageController.js"></script>索引和關於頁面並沒有幫助。

MyAboutPageController

MyApp.angular.controller("MyAboutPageController", function($scope){ 
    $scope.name = "John Wick Test"; 
    console.log("MyAboutPageController loaded fine!!"); 
}); 

關於頁面加載罰款,但控制器不。請幫忙。

回答

0

Angular旨在幫助您創建SPA(單頁應用程序),這意味着您不必在頁面之間導航(無回傳,無新頁面)。

我建議你使用NG-視圖和$ routeProvider,所以是這樣的:

<head>  
... 
<script src="scripts/app/index.js"></script> 
</head> 

然後在你的身體:

<body ng-app="YourApp"> 
... 
Click <a href="#!about">here</a> to go to About 
<div ng-view></div> 
在index.js

app.config(function ($routeProvider) { 
$routeProvider 
    .when('about', { 
     templateUrl: 'Views/about.html', 
     controller: 'AboutController' 
    }) 
... 
app.controller("AboutController", function($scope){ 
$scope.name = "John Wick Test"; 
console.log("MyAboutPageController loaded fine!!"); 
});