W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
vue-router 是專為 Vue.js 開發(fā)的便于實現(xiàn)單頁應(yīng)用的工具庫,能夠以聲明式的方法編寫頁面的導(dǎo)航和跳轉(zhuǎn)信息。
由于 Weex 的運行環(huán)境不只是瀏覽器,通常是以移動端原生環(huán)境為主,然而在 Android 和 iOS 中都沒有瀏覽器的 History API,也不存在 DOM,因此如果想在 Weex 環(huán)境中使用 vue-router ,有些功能受到了限制,使用時應(yīng)該注意。
vue-router 提供了三種運行模式:
hash
?: 使用 URL hash 值來作路由。默認(rèn)模式。history
?: 依賴 HTML5 History API 和服務(wù)器配置。查看 HTML5 History 模式。abstract
?: 支持所有 JavaScript 運行環(huán)境,如 Node.js 服務(wù)器端。配置方法是在定義路由時,傳遞 ?mode
? 屬性:
new Router({
mode: 'abstract',
// ...
})
從三種模式的介紹中也可以看出來,Weex 環(huán)境中只支持使用 abstract 模式。不過,vue-router 自身會對環(huán)境做校驗,如果發(fā)現(xiàn)沒有瀏覽器的 API,vue-router 會自動強制進入 abstract 模式,所以在使用時只要不寫 ?mode
? 配置即可。默認(rèn) vue-router 會在瀏覽器環(huán)境中使用 hash 模式,在移動端原生環(huán)境中使用 abstract 模式。
vue-router 中使用 ?<router-link>
? 創(chuàng)建導(dǎo)航鏈接,不過在其中使用了基于 DOM 事件的一些特性,在 Weex 原生環(huán)境中并不能很好的工作。在 Weex 中,你必須使用編程式導(dǎo)航來編寫頁面跳轉(zhuǎn)邏輯。
編程式導(dǎo)航其實就是通過主動調(diào)用 router 實例上的 ?push
? 方法實現(xiàn)跳轉(zhuǎn)。
使用 ?<router-link>
? 的代碼示例:
<!-- 只能在 Web 中使用,Native 環(huán)境不支持! -->
<template>
<div>
<router-link to="profile">
<text>Profile</text>
</router-link>
</div>
</template>
在 Weex 中,需要寫成這個樣子:
<template>
<div>
<text @click="jump">Profile</text>
</div>
</template>
<script>
import router from './path/to/router'
export default {
methods: {
jump () {
router.push('profile')
}
}
}
</script>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: