반응형
$ location을 사용하여 AngularJS의 새 페이지로 리디렉션
다음 AngularJS $ location으로 테스트 중입니다. 나는 이것의 문제가 무엇인지 모른다. 리디렉션이 작동하는지 확인하고 싶습니다.
HTML
<body data-ng-controller="MainCtrl">
Hello {{name}}!
<button ng-click='go()'>Go</button>
</body>
AngularJS 코드
var app = angular.module('location', []);
app.controller('MainCtrl', function($scope,$routeParams, $location) {
$scope.name = 'World';
$scope.go = function() {
$location.absUrl() = 'http://www.google.com';
}
});
$ location은 외부 URL에 도움이되지 않습니다. 대신 $ window 서비스를 사용하세요.
$window.location.href = 'http://www.google.com';
window 객체를 사용할 수 있지만 $ window는 쉽게 모의 할 수있는 반면 window는 그렇지 않으므로 나쁜 습관 입니다.
ng-view를 변경하려면 '#'을 사용해야합니다.
$window.location.href= "#operation";
라인
$location.absUrl() == 'http://www.google.com';
잘못되었습니다. 먼저 ==는 비교를하고 아마도 당신이하려는 것은 할당 일 것입니다. 이것은 double ==이 아닌 단순한 =입니다.
그리고 absUrl () getter 만 있기 때문입니다. 원하는 경우 setter 또는 getter로 사용할 수있는 url ()을 사용할 수 있습니다.
참조 : http://docs.angularjs.org/api/ng . $ location
도움이 될 수 있습니다!
AngularJs 코드 샘플
var app = angular.module('urlApp', []);
app.controller('urlCtrl', function ($scope, $log, $window) {
$scope.ClickMeToRedirect = function () {
var url = "http://" + $window.location.host + "/Account/Login";
$log.log(url);
$window.location.href = url;
};
});
HTML 코드 샘플
<div ng-app="urlApp">
<div ng-controller="urlCtrl">
Redirect to <a href="#" ng-click="ClickMeToRedirect()">Click Me!</a>
</div>
</div>
이것은 지시문 내에서 나를 위해 일했으며 baseurl을 새로 고치지 않고 작동합니다 (엔드 포인트 추가). 라우팅 메커니즘이있는 단일 페이지 앱에 적합합니다.
$(location).attr('href', 'http://localhost:10005/#/endpoint')
함수 안에 URL을 입력 해보세요
$location.url('http://www.google.com')
참고 URL : https://stackoverflow.com/questions/18875467/redirect-to-new-page-in-angularjs-using-location
반응형
'program tip' 카테고리의 다른 글
C ++의 클래스 이니셜 라이저에서 const 배열 초기화 (0) | 2020.10.26 |
---|---|
Facebook 좋아요 버튼-수 숨기기? (0) | 2020.10.26 |
.css 파일 (flask / python)을 선택하지 않는 애플리케이션 (0) | 2020.10.26 |
"interfaceOrientation"은 iOS 8에서 더 이상 사용되지 않습니다.이 메서드를 변경하는 방법 Objective C (0) | 2020.10.26 |
사용하지 않는 포함은 C / C ++에서 유해합니까? (0) | 2020.10.26 |