Rumah >hujung hadapan web >uni-app >Cara melaksanakan penghantaran parameter dan pos balik antara halaman dalam uniapp
.
Path parameter passingPath parameter passing bermakna apabila melompat ke halaman lain, parameter disambung terus selepas URL dan diluluskan. Apabila melompat, kami menghantar parameter ke halaman seterusnya dengan menambah parameter selepas URL Pada halaman seterusnya, nilai parameter boleh diperolehi melalui kaedah uni.getStorageSync().
// 页面A uni.navigateTo({ url: '/pages/B/B?param1=123¶m2=456' }) // 页面B onLoad: function (options) { console.log(options.param1) //输出123 console.log(options.param2) //输出456 }props parameter passing
// 父组件 <template> <child-component :param1="param1"></child-component> </template> <script> export default { data() { return { param1: '123', param2: '456' } } } </script> // 子组件 <template> <view>{{ $props.param1 }}</view> <view>{{ $props.param2 }}</view> </template>pemindahan parameter vuex
// 页面A <template> <button @click="sendParam">传递参数</button> </template> <script> export default { methods: { sendParam() { this.$store.commit('SET_PARAM', '参数值') uni.navigateTo({ url: '/pages/B/B' }) } } } </script> // 页面B onLoad: function () { console.log(this.$store.getters.param) //输出参数值 } // store import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) const store = new Vuex.Store({ state: { param: '' }, mutations: { SET_PARAM(state, value) { state.param = value } }, getters: { param: state => state.param } }) export default store
2. Postback
Kaedah uni.navigateBack digunakan untuk kembali ke halaman sebelumnya dan boleh dihantar kembali dengan menghantar parameter.
// 页面A uni.navigateTo({ url: '/pages/B/B' }) // 页面B uni.navigateBack({ delta: 1, success: function () { uni.getOpenerEventChannel().emit('acceptDataFromB', {data: '回传的参数'}) } }) // 页面A onLoad: function () { const eventChannel = this.getOpenerEventChannel() eventChannel.on('acceptDataFromB', function (data) { console.log(data) //输出{data: '回传的参数'} }) }EventBus bas acara pos balik
// 页面A // main.js Vue.prototype.$eventBus = new Vue() // 页面B this.$eventBus.$emit('acceptDataFromB', {data: '回传的参数'}) uni.navigateBack({ delta: 1 }) // 页面A this.$eventBus.$on('acceptDataFromB', function (data) { console.log(data) //输出{data: '回传的参数'} })
Melalui kaedah di atas, kami boleh melaksanakan pemindahan parameter dan kembali antara halaman dalam uniapp. Melalui laluan parameter laluan, props parameter passing, vuex parameter passing, uni.navigateBack passing back dan EventBus passing back, dsb., anda boleh memilih kaedah yang sesuai mengikut keperluan sebenar untuk merealisasikan lulus dan kembali parameter.
Atas ialah kandungan terperinci Cara melaksanakan penghantaran parameter dan pos balik antara halaman dalam uniapp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!