[노트] vue-router의 루트 전달 매개 변수

6546 단어
참조 블로그 주소:https://blog.51cto.com/4547985/2390799
1. 라벨에 있는 to를 통해 전참
<router-link :to="{name:xxx, params: {key:value}}">valueStringrouter-link>
PS:  to      ,               

name:          name 。      ,      。

params:     ,      ,           。

      :
(1) src/components/Home.vue           :

<router-link :to="{name: 'one', params:{username:'test123'}}">   1router-link>
(2) src/router/indes.js       ,   name:

{
    path:'one', //    1
    name: 'one', //     -    
    component:One}
(3) src/components/One.vue      ,    :

<h2>{{$route.params.username}}h2>

 
2. URL에서 매개 변수 전달
 1 (1)         , src/router/index.js       :
 2 
 3 {
 4     path:'/home/two/:id/:name', //    2
 5     component:Two},
 6 (2)    , src/components/Two.vuez       :
 7 
 8 <p>ID:{{ $route.params.id}}p><p>  :{{ $route.params.name}}p>
 9 (3)    , src/components/Home.vue       :
10 
11 <router-link to="/home/two/1/  ">   2router-link>
12 PS:to           ,      。
13 (4)              ,           ,    :
14 
15 {
16     path:'/home/two/:id(\\d+)/:name', //    2
17     component:Two}

 
3. 프로그래밍식 내비게이션-params 전달 매개 변수
참고: 이 방법은 브라우저의 주소 표시줄에 매개 변수가 표시되지 않으며 페이지를 새로 고치면 매개 변수를 가져올 수 없습니다.
개선 방법은 1부의 코드를 다음과 같이 변경합니다.
 1 //   
 2 <template>
 3     <button @click="toThreePage">  3-params  button>
 4 template>
 5 
 6 
 7 scriptmethods: {
 8     toThreePage() {
 9         this.$router.push({name: 'three', params: {id: 1, name: 'zhangsan'}})
10     }}
11 
12 
13 
14 
15 //   
16 <p>ID:{{ $route.params.id}}p><p>  :{{ $route.params.name}}p>

 
4. 프로그래밍식 내비게이션-query 전달 매개 변수
주의: 동적 루트는query 전달 파라미터를 사용하여 브라우저 주소 표시줄에 표시됩니다. 다음 링크는/home/three입니까?id=1&name=zhangsan
//부모 페이지 3-params전참scriptmethods: {toThreePage() {this.$router.push({path:'/home/three',query:{id:1,name:'zhangsan'})}}
 
 
//하위 페이지 ID: {{$route.query.id} 이름: {{$route.query.name}

좋은 웹페이지 즐겨찾기