0
我想創建一個單一頁面的應用程序與我很新的angularjs。我已經根據一些教程將這些代碼拼湊在一起,但它不起作用,我不太清楚爲什麼。我沒有收到我能看到的任何錯誤。目的是讓home.html文件在初始加載時加載。然後根據路線,加載不同的模板。AngularJS的路線和模板加載
的script.js
angular.module("myApp", ['ngRoute']).config(['$routeProvider', function($routeProvider){
$routeProvider.when("/view", {
templateUrl: "/view.html",
controller: "ViewCtrl"
})
.otherwise({
templateUrl: "/home.html",
controller: "HomeCtrl"
});
}]);
angular.module("myApp").controller("ViewCtrl", ['$scope', function($scope){
$scope.message = "In the view";
}]);
angular.module("myApp").controller("HomeCtrl", ['$scope', function($scope){
$scope.message = "At home";
}]);
angular.element(document).ready(function(){
angular.bootstrap(document, ['myApp']);
})
的index.html
<!DOCTYPE html>
<html>
<head>
<script data-require="[email protected]" data-semver="1.4.0-beta.4" src="https://code.angularjs.org/1.4.0-beta.4/angular.js"></script>
<script data-require="[email protected]" data-semver="1.4.0-beta.4" src="https://code.angularjs.org/1.4.0-beta.4/angular-route.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body>
<div id="content" ng-app="myApp"></div>
</body>
</html>
home.html做爲
<div ng-controller="HomeCtrl">
{{message}}
</div>
view.html
<div ng-controller="ViewCtrl">
{{message}}
</div>
http://plnkr.co/edit/eLZQueX3OyPCXo2tQGWS
而且不應該有在視圖中的任何NG-控制器,因爲路由器已經實例化控制器並將其關聯到視圖。而且不需要手動引導應用程序,因爲這就是ng-app的功能。 – 2015-02-10 17:36:28
@JB Nizzet,根據你的有效評論更新答案。謝謝! – Asik 2015-02-10 17:41:54
太好了,謝謝! – 2015-02-10 18:11:02