앵글의 새 페이지로 리다이렉트$location을 사용하는 JS
아래 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';
틀렸습니다.먼저 ==에서 비교를 해보겠습니다. 아마도 여러분이 하려고 하는 것은 이중 ==가 아닌 단순 =로 이루어진 과제일 것입니다.
그리고 absUrl() getter만 해당하기 때문입니다.url()을 사용할 수 있습니다.이 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
'programing' 카테고리의 다른 글
부울 속성에 의한 "track by"를 사용한 각도 1.2ng 반복 필터링 (0) | 2023.03.31 |
---|---|
AngularJS용 ui-router를 사용하여 쿼리 파라미터를 추출하는 방법 (0) | 2023.03.31 |
AngularJS - 서버측 검증 및 클라이언트측 폼 (0) | 2023.03.31 |
angularjs 루트 유닛 테스트 (0) | 2023.03.31 |
angular-ui 버전 0.11.0에서 Datepicker가 두 번 열리지 않음 (0) | 2023.03.31 |