to
表示目標路由的鏈接。 當被點擊后,內部會立刻把 to 的值傳到 router.push(),所以這個值可以是一個字符串或者是描述目標位置的對象。
<!-- 字符串 --><router-link to="home">Home</router-link><!-- 渲染結果 --><a href="home" rel="external nofollow" >Home</a><!-- 使用 v-bind 的 JS 表達式 --><router-link v-bind:to="'home'">Home</router-link><!-- 不寫 v-bind 也可以,就像綁定別的屬性一樣 --><router-link :to="'home'">Home</router-link><!-- 同上 --><router-link :to="{ path: 'home' }">Home</router-link><!-- 命名的路由 --><router-link :to="{ name: 'user', params: { userId: 123 }}">User</router-link><!-- 帶查詢參數,下面的結果為 /register?plan=private --><router-link :to="{ path: 'register', query: { plan: 'private' }}">Register</router-link>
replace
設置 replace 屬性的話,當點擊時,會調用 router.replace() 而不是 router.push(),導航后不會留下 history 記錄。
<router-link :to="{ path: '/abc'}" replace></router-link>
append
設置 append 屬性后,則在當前 (相對) 路徑前添加基路徑。例如,我們從 /a 導航到一個相對路徑 b,如果沒有配置 append,則路徑為 /b,如果配了,則為 /a/b
<router-link :to="{ path: 'relative/path'}" append></router-link>
tag
有時候想要 渲染成某種標簽,例如
于是我們使用 tag prop 類指定何種標簽,同樣它還是會監聽點擊,觸發導航。
<router-link to="/foo" tag="li">foo</router-link><!-- 渲染結果 --><li>foo</li>
active-class
設置 鏈接激活時使用的 CSS 類名??梢酝ㄟ^以下代碼來替代。
<style> ._active{ background-color : red; }</style><p> <router-link v-bind:to = "{ path: '/route1'}" active-class = "_active">Router Link 1</router-link> <router-link v-bind:to = "{ path: '/route2'}" tag = "span">Router Link 2</router-link></p>注意這里 class 使用 active_class="_active"。
exact-active-class
配置當鏈接被精確匹配的時候應該激活的 class??梢酝ㄟ^以下代碼來替代。
<p> <router-link v-bind:to = "{ path: '/route1'}" exact-active-class = "_active">Router Link 1</router-link> <router-link v-bind:to = "{ path: '/route2'}" tag = "span">Router Link 2</router-link></p>
event
聲明可以用來觸發導航的事件??梢允且粋€字符串或是一個包含字符串的數組。
<router-link v-bind:to = "{ path: '/route1'}" event = "mouseover">Router Link 1</router-link>
以上代碼設置了 event 為 mouseover ,及在鼠標移動到 Router Link 1 上時導航的 HTML 內容會發生改變。
以上所述是小編給大家介紹的vue中router-link標簽所必備了解的屬性詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答