ライフサイクル - onBackPress() はページの戻りをリッスンします
関数名 |
説明する |
プラットフォームの違いの説明 |
onBackPress |
モニターページリターン、リターンイベント = {from:backbutton, navigateBack}、backbutton はソースが左上隅の戻るボタンまたは Android の戻るキーであることを意味します; navigateBack はソースが uni.navigateBack であることを意味します; 詳細な説明と使用法: onBackPress 詳細な説明。Alipay アプレットは実際のマシンによってのみトリガーでき、非 navigateBack による戻りを監視することしかできず、デフォルトの動作を防ぐことはできません。 |
アプリ、H5、Alipay アプレット |
- 基本的な使用法:戻り値のオプションに注意してください
onBackPress(options) {
if (options.from === 'navigateBack') {
return false;
}
}
リフレッシュデータを返す
onBackPress(options) {
console.log("----------onBackPress---------", options)
if (options.from === 'navigateBack') {
return false;
}
this.back();
return true;
},
methods: {
back() {
let pages = getCurrentPages();
let nowPage = pages[pages.length - 1];
let prevPage = pages[pages.length - 2];
console.log(prevPage)
prevPage.isRefresh = true
uni.navigateBack({
delta: 1
});
uni.navigateBack({
delta: 1,
success:(event)=>{
prevPage.$vm.getData();
}
});
}
}
export default{
data(){
return{
isRefresh:false
}
},
onShow() {
console.log('onShow')
let pages = getCurrentPages();
let currPage = pages[pages.length - 1];
if (currPage.isRefresh) {
console.log("重新获取数据",this.isRefresh)
currPage.isRefresh = false
}
console.log(this.isRefresh)
},
}