uniapp は、第 1 レベルのページでイベントをトリガーしたり、第 2 レベルのページが第 1 レベルのページに戻ったときに第 1 レベルのページの特定のデータを更新したりする小さなプログラムを開発します。

セカンダリページコード:

uni.navigateBack({
			delta: 1,
			success() {
				const pages = getCurrentPages();
				const targetPage = pages[0];
				targetPage.$vm.addJournalState=true
	}
})

一部のブロガーは、var targetPage = Pages[pages.length - 2] という方法で前のページの情報を取得します。私は次のように取得しますが、未定義と表示されます。年齢を印刷してコンテンツを確認し、次の方法で選択できます。あなた自身

注釈:

getCurrentPages()現在のページスタックを取得するメソッド

$vmVue コンポーネント インスタンスを参照します。

第 1 レベルのページ コード:

		onShow() {
			setTimeout(() => {
				if (this.addJournalState) {
                    // 重新获取数据
					this.upJournal()
					this.addJournalState = false
				}
			}, 100)
		}

ページが切り替わるたびに判定し、指定したセカンダリページが返ってきた場合はステータスをtrueにし、コードを実行してデータを取得します。

注釈:

setTimeout を使用する理由は、第 1 レベルのページ addJournalState の状態が変更されたことを確認するためです。

おすすめ

転載: blog.csdn.net/weixin_52479803/article/details/131528496