1
我在做有關angularjs的教程。一切都很好,直到與路線工作。 我之前搜索過這個問題,但它不適合我。
我正在做的作者鍵入的代碼,但它不工作。放 NG-視圖index.html中ng-view不顯示路由(angularjs)
<html ng-app="githubViewer">
<head>
<title>Demo</title>
<script type="text/javascript" src="js/angular.min.js"></script>
<script type="text/javascript" src="js/angular-route.js"></script>
<script type="text/javascript" src="app.js"></script>
<script type="text/javascript" src="MainController.js"></script>
<script type="text/javascript" src="github.js"></script>
</head>
<body>
<h1>Github Viewer</h1>
<div ng-view=""></div>
</body>
app.js
(function() {
var app = angular.module("githubViewer", ["ngRoute"]);
app.config(function($routeProvider) {
$routeProvider
.when("/main", {
templateUrl: "main.html",
controller: "MainController"
})
.otherwise({redirectTo:"/main"});
});})();
MainController.js
(function() {
var app = angular.module("githubViewer");
var MainController = function(
$scope, $interval, $location) {
var decrementCountdown = function() {
$scope.countdown -= 1;
if ($scope.countdown < 1) {
$scope.search($scope.username);
}
};
var countdownInterval = null;
var startCountdown = function() {
countdownInterval = $interval(decrementCountdown, 1000, 5, $scope.countdown);
};
$scope.search = function(username) {
if (countdownInterval) {
$interval.cancel(countdownInterval);
$scope.countdown = null;
}
};
$scope.username = "angular";
$scope.countdown = 5;
startCountdown();
};
app.controller("MainController", MainController);})();
main.html中
個<div> {{countdown}} {{username}} <form name="searchUser" ng-submit="search(username)"> <input type="search" required placeholder="usẻname to ind" ng-model="username" /> <input type="submit" value="Search" ng-click="search(username)"> </form>
github.js
(function() {
var github = function($http) {
var getUser = function(username){
return $http.get("https://api.github.com/users/" + username)
.then(function(response){
return response.data;
});
};
var getRepos = function(user){
return $http.get(user.repos_url)
.then(function(response){
return response.data;
});
};
return{
getUser : getUser,
getRepos: getRepos
};
};
var module = angular.module("githubViewer");
module.factory("github", github);})();
這是我的錯誤,當我把這個代碼粘貼到那裏。在我的來源中,它是正確的。我認爲這是關於我正在使用的路線的問題。 – 2014-11-05 09:40:33
問題仍然存在:控制檯中是否存在錯誤? – dfsq 2014-11-05 09:41:17
是的。在MainController.js中,如果我把[]這樣:var app = angular.module(「githubViewer」,[]);它沒有錯誤,但ng-view沒有顯示。如果我像這樣刪除[](正是作者類型):var app = angular.module(「githubViewer」);它'錯誤,並鏈接到這個:https://docs.angularjs.org/error/$injector/unpr?p0=$templateRequestProvider%20%3C-%20$templateRequest%20%3C-%20$route%20% 3C-%20ngViewDirective – 2014-11-05 09:44:26