W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
很多應(yīng)用由多個頁面組成,比如用戶可以從音樂列表頁面點(diǎn)擊歌曲,跳轉(zhuǎn)到該歌曲的播放界面。開發(fā)者需要通過頁面路由將這些頁面串聯(lián)起來,按需實(shí)現(xiàn)跳轉(zhuǎn)。
頁面路由 router 根據(jù)頁面的 uri 來找到目標(biāo)頁面,從而實(shí)現(xiàn)跳轉(zhuǎn)。以最基礎(chǔ)的兩個頁面之間的跳轉(zhuǎn)為例,具體實(shí)現(xiàn)步驟如下:
創(chuàng)建 index 和 detail 頁面,這兩個頁面均包含一個 text 組件和 button 組件:text 組件用來指明當(dāng)前頁面,button 組件用來實(shí)現(xiàn)兩個頁面之間的相互跳轉(zhuǎn)。hml 文件代碼示例如下:
<!-- index.hml -->
<div class="container">
<div class="text-div">
<text class="title">This is the index page.</text>
</div>
<div class="button-div">
<button type="capsule" value="Go to the second page" onclick="launch"></button>
</div>
</div>
<!-- detail.hml -->
<div class="container">
<div class="text-div">
<text class="title">This is the detail page.</text>
</div>
<div class="button-div">
<button type="capsule" value="Go back" onclick="launch"></button>
</div>
</div>
config.json 文件是配置文件,主要包含了 JS FA 頁面路由信息。開發(fā)者新創(chuàng)建的頁面都要在配置文件的pages 標(biāo)簽中進(jìn)行注冊,處于第一位的頁面為首頁,即點(diǎn)擊圖標(biāo)后的主頁面。
{
...
"pages": [
"pages/index/index",
"pages/detail/detail"
],
...
}
為了使 button 組件的 launch 方法生效,需要在頁面的 js 文件中實(shí)現(xiàn)跳轉(zhuǎn)邏輯。調(diào)用 router.push() 接口將 uri 指定的頁面添加到路由棧中,即跳轉(zhuǎn)到 uri 指定的頁面。在調(diào)用 router 方法之前,需要導(dǎo)入 router 模塊。代碼示例如下:
// index.js
import router from '@system.router';
export default {
launch: function() {
router.push ({
uri: 'pages/detail/detail',
});
},
}
// detail.js
import router from '@system.router';
export default {
launch: function() {
router.back();
},
}
運(yùn)行效果如下圖所示:
圖1 頁面路由效果
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: