AngularJS용 ui-router를 사용하여 쿼리 파라미터를 추출하는 방법
AngularJS용 ui-router를 사용하여 쿼리 파라미터를 추출하려면 어떻게 해야 합니까?
각진 상태JS만의$location
내가 한 서비스:
($장소).search()를 클릭합니다.uid
URL에서 파라미터 uid를 추출합니다.ui-router에 대응하는 코드는 무엇입니까?
URL 라우팅 매뉴얼의 쿼리 파라미터 섹션을 참조하십시오.
파라미터는 '?' 뒤에 이어지는 쿼리 파라미터로 지정할 수도 있습니다.
url: "/contacts?myParam" // will match to url of "/contacts?myParam=value"
이 예에서는 URL이/contacts?myParam=value
그럼 의 가치는$state.params
다음과 같습니다.
{ myParam: 'value' }
쿼리 파라미터에 바인드하지 않는 한(매뉴얼 참조)를 통해 직접 액세스 할 수 없습니다.$state
또는$stateParams
. 를 사용합니다.$location
서비스.
편집: 문서별로 쿼리 파라미터를 캡처하는 경우$stateParams
, 를 추가할 수 있습니다.?
고객님께url
및 각 쿼리 파라미터의 이름을 지정합니다.&
,예.url: "/foo?bar&baz"
.
ui-location은 $location 서비스와 달리 URL 내의 다른 유형의 파라미터를 구분하지 않습니다.
컨트롤러에서는 $stateParams 서비스를 사용하여 URL 내의 다양한 유형의 파라미터에 액세스할 수 있습니다.
다음은 UI 브라우저 Wiki의 예입니다.
// Then you navigated your browser to:
'/users/123/details/default/0?from=there&to=here'
// Your $stateParams object would be
{ id:'123', type:'default', repeat:'0', from:'there', to:'here' }
따라서 uid 파라미터를 찾으려면 다음 명령을 사용합니다.
$scope.uid = $stateParams.uid
또한 $stateProvider에서 쿼리 파라미터를 정의해야 합니다.
state('new-qs', {
url: '/new?portfolioId¶m1¶m2',
templateUrl: 'new.html',
controller: function($scope, $stateParams) {
$scope.portfolioId = $stateParams.portfolioId;
$scope.param1 = $stateParams.param1;
$scope.param2 = $stateParams.param2;
}
})
$stateParams에서 얻을 수 있지만 이 경우 루트에도 쿼리 변수를 선언해야 합니다.
-와 같은 경로로 선언하다
url: '/path?name'
컨트롤러에서 이름을 가져오려면 $stateParams를 삽입하고 다음과 같이 사용합니다.
$stateParams.name
Angular의 최신 버전인 경우JS와 ui-router를 사용하면 될 것 같아요.$state
파라미터에 액세스하려면:
$state.params[<PARAMETER_NAME>]
여기서 app.http에서는 다음과 같이 상태를 정의했습니다.
.state('app.name', {
url: '/:some_param_id',
templateUrl: '/templates/home.html'
})
언급URL : https://stackoverflow.com/questions/19053991/how-to-extract-query-parameters-with-ui-router-for-angularjs
'programing' 카테고리의 다른 글
정의되지 않은 속성 '이력'을 읽을 수 없습니다(React Router 5의 useHistory hook). (0) | 2023.03.31 |
---|---|
부울 속성에 의한 "track by"를 사용한 각도 1.2ng 반복 필터링 (0) | 2023.03.31 |
앵글의 새 페이지로 리다이렉트$location을 사용하는 JS (0) | 2023.03.31 |
AngularJS - 서버측 검증 및 클라이언트측 폼 (0) | 2023.03.31 |
angularjs 루트 유닛 테스트 (0) | 2023.03.31 |