저는 AngularJS 골짜기 Pluralsight 교육 프로그램을 배우고 있습니다. 나는 아직 시작 단계에 있으며 github에서 사용자를 검색하고 사용자 이름, 아바타 및 repos 목록과 같은 기본 정보를 보여주는 간단한 응용 프로그램을 작성 중입니다.경로가 각도로 작동하지 않습니다.
다음 단계는 각 repo를 클릭 할 수있게하는 것이며 해당 사용자는 특정 repo에 대한 추가 정보를 볼 수 있습니다. 나는 경로, 컨트롤러 및보기를 만들었지 만 작동하지 않는 이유를 알 수 없습니다. 내가 원하는보기를 얻을 수 없기 때문에 경로가 문제라고 가정합니다.
(function() {
var app = angular.module("githubViewer", ["ngRoute"]);
app.config(function($routeProvider) {
$routeProvider
.when("/main", {
templateUrl: "main.html",
controller: "MainController"
})
.when("/user/:username", {
templateUrl: "user.html",
controller:"UserController"
})
.when("/repos/:username/:reponame", {
templateUrl: "repo.html",
controller:"RepoController"
})
.otherwise({
redirectTo: "/main"
});
});
}());
RepoController :
(function() {
var app = angular.module("githubViewer");
var RepoController = function($scope, github, $routeParams) {
var onRepos = function(data) {
$scope.repo = data;
};
var onError = function(reason) {
$scope.error = "Could retrieve data";
};
var username = $routeParams.username;
var reponame = $routeParams.reponame;
github.getRepoInfo(username, reponame).then(onRepos, onError);
};
app.controller("RepoController", RepoController);
}());
그리고 느릅 나무보기에서 user.html 당신이 열 수 환매 특약 사항 :
<tbody>
<tr ng-repeat="repo in repos | orderBy:repoSortOrder">
<td><a ng-href="#/repos/{{user.login}}/{{repo.name}}">{{repo.name}}</a></td>
<td>{{repo.stargazers_count | number}}</td>
<td>{{repo.language}}</td>
</tr>
</tbody>
당신은 찾을 수 있습니다 여기에
내 경로를 찾을 수 있습니다 전체 프로젝트 위치 : https://plnkr.co/edit/YpDofAJmrxn5IU7rGIjh
사이트의 기본 URL이<a href="#!/main">Back To Main</a>
<a href="#!/user/{{repo.owner.login}}">Back To {{repo.owner.login}}</a>
user.html에서
<a href="#!/repo/{{user.login}}/{{repo.name}}">{{repo.name}}</a>
추천하고 repo.html에!/#와 링크를 chenge해야 http://localhost/#!/main
처럼이기 때문에 6,
당신에게
이 답변에 추가하려면 : 이것은 1.6 각도 이후 기본 해시 접두사가 더 이상 빈 문자열 ("")이 아니며 느낌표 ("!")이기 때문입니다. [출처] (https://github.com/angular/angular.js/commit/aa077e81129c740041438688dff2e8d20c3d7b52) –