Rumah > hujung hadapan web > uni-app > Petua UniApp untuk melaksanakan pengurusan penghalaan dan lompatan halaman

Petua UniApp untuk melaksanakan pengurusan penghalaan dan lompatan halaman

王林
Lepaskan: 2023-07-04 12:28:36
asal
1612 orang telah melayarinya

UniApp berkongsi petua tentang melaksanakan pengurusan laluan dan lompatan halaman

UniApp ialah rangka kerja pembangunan merentas platform berdasarkan Vue.js, yang boleh digunakan untuk membangunkan aplikasi untuk berbilang platform seperti iOS, Android dan Web. Dalam UniApp, pengurusan laluan dan lompat halaman adalah bahagian yang sangat penting Artikel ini akan berkongsi beberapa petua UniApp untuk melaksanakan pengurusan laluan dan lompat halaman, dan menyediakan contoh kod untuk rujukan.

  1. Pengurusan laluan

UniApp menggunakan Penghala Vue untuk mengurus penghalaan dan menyediakan beberapa API biasa untuk konfigurasi dan operasi penghalaan. Sebelum anda mula menggunakan penghalaan, anda perlu memasang dan memperkenalkan pemalam Vue Router. Dalam fail main.js, anda boleh mengkonfigurasinya seperti ini: main.js文件中,可以这样配置:

import Vue from 'vue'
import App from './App'
import router from './router'

Vue.config.productionTip = false

App.mpType = 'app'

const app = new Vue({
  ...App,
  router
})
app.$mount()
Salin selepas log masuk

在这里,我们将Vue Router插件引入并赋值给router对象。然后,在实例化Vue应用程序时,将router对象注入到Vue实例中,使其在整个应用程序中可用。

  1. 页面跳转

UniApp提供了uni.navigateTouni.redirectTo两个方法来实现页面跳转。uni.navigateTo用于跳转到新的页面,并保留原页面的状态,而uni.redirectTo用于直接替换当前页面。

下面是一个示例,演示如何在UniApp中使用路由进行页面跳转:

// 在A页面中跳转到B页面
uni.navigateTo({
  url: '/pages/B'
})

// 在B页面中跳转到C页面
uni.navigateTo({
  url: '/pages/C'
})

// 在C页面中跳转到D页面,并关闭C页面
uni.redirectTo({
  url: '/pages/D'
})
Salin selepas log masuk

在这个示例中,我们分别在A、B和C页面使用uni.navigateTo进行页面跳转,并分别跳转到B、C和D页面。在C页面中,我们还使用了uni.redirectTo方法来关闭C页面并跳转到D页面。

  1. 路由传参

有时候,我们需要在路由之间传递参数,UniApp提供了两种方式来实现路由传参:通过query参数和通过params参数。

使用query参数,在跳转时,可以将参数添加到url中,如下所示:

uni.navigateTo({
  url: '/pages/B?id=1&name=example'
})
Salin selepas log masuk

在接收参数的页面,可以通过this.$route.query来获取参数值,如下所示:

export default {
  mounted() {
    console.log(this.$route.query.id) // 输出1
    console.log(this.$route.query.name) // 输出example
  }
}
Salin selepas log masuk

使用params参数,需要在路由配置中定义参数名,如下所示:

// 在路由配置中定义参数名
{
  path: '/pages/B/:id/:name',
  name: 'B',
  component: B
}
Salin selepas log masuk

然后,可以通过uni.navigateTo方法来传递参数,如下所示:

uni.navigateTo({
  url: '/pages/B/1/example'
})
Salin selepas log masuk

在接收参数的页面,可以通过this.$route.params来获取参数值,如下所示:

export default {
  mounted() {
    console.log(this.$route.params.id) // 输出1
    console.log(this.$route.params.name) // 输出example
  }
}
Salin selepas log masuk

通过以上的示例,我们可以看到UniApp中实现路由管理与页面跳转的基本操作。通过Vue Router插件提供的API,我们可以方便地进行路由的配置和操作,并通过uni.navigateTouni.redirectTorrreee

Di sini, kami memperkenalkan pemalam Vue Router dan menetapkannya kepada objek router. Kemudian, apabila menghidupkan aplikasi Vue, masukkan objek router ke dalam tika Vue, menjadikannya tersedia di seluruh aplikasi.

    Lompatan halaman🎜🎜🎜UniApp menyediakan dua kaedah: uni.navigateTo dan uni.redirectTo untuk mencapai lompatan halaman. uni.navigateTo digunakan untuk melompat ke halaman baharu dan mengekalkan status halaman asal, manakala uni.redirectTo digunakan untuk menggantikan terus halaman semasa. 🎜🎜Berikut ialah contoh yang menunjukkan cara menggunakan penghalaan untuk lompatan halaman dalam UniApp: 🎜rrreee🎜Dalam contoh ini, kami menggunakan uni.navigateTo untuk lompatan halaman pada halaman A, B dan C masing-masing. dan lompat ke muka surat B, C dan D masing-masing. Dalam halaman C, kami juga menggunakan kaedah uni.redirectTo untuk menutup halaman C dan melompat ke halaman D. 🎜
      🎜Melalui parameter laluan🎜🎜🎜Kadangkala, kita perlu menghantar parameter antara laluan UniApp menyediakan dua cara untuk melaksanakan laluan parameter laluan: melalui parameter pertanyaan dan melalui parameter params. 🎜🎜Gunakan parameter pertanyaan Apabila melompat, anda boleh menambah parameter pada url, seperti yang ditunjukkan di bawah: 🎜rrreee🎜Pada halaman yang menerima parameter, anda boleh mendapatkan parameter melalui this.$route.query<.> Nilai, seperti yang ditunjukkan di bawah: 🎜rrreee🎜Menggunakan parameter params, anda perlu mentakrifkan nama parameter dalam konfigurasi penghalaan, seperti yang ditunjukkan di bawah: 🎜rrreee🎜 Kemudian, anda boleh lulus parameter melalui <code>uni. kaedah navigateTo, seperti berikut Paparan: 🎜rrreee🎜Pada halaman yang menerima parameter, anda boleh mendapatkan nilai parameter melalui this.$route.params, seperti yang ditunjukkan di bawah: 🎜rrreee🎜Melalui contoh di atas, kita boleh melihat pelaksanaan dalam operasi Asas UniApp pengurusan laluan dan lompat halaman. Melalui API yang disediakan oleh pemalam Vue Router, kami boleh mengkonfigurasi dan mengendalikan penghalaan dengan mudah serta melaksanakan lompatan halaman melalui kaedah uni.navigateTo dan uni.redirectTo. Pada masa yang sama, UniApp juga menyediakan cara untuk menghantar parameter Anda boleh memilih untuk menggunakan parameter pertanyaan atau parameter params untuk menghantar parameter mengikut keperluan. 🎜🎜Saya harap artikel ini dapat membantu semua orang lebih memahami dan menggunakan pengurusan penghalaan dan fungsi lompat halaman dalam UniApp. Jika anda mempunyai soalan lain tentang UniApp, anda boleh menyemak dokumentasi rasmi UniApp atau merujuk kepada bahan lain yang berkaitan. Saya doakan anda semua mendapat keputusan yang baik dalam pembangunan UniApp! 🎜

Atas ialah kandungan terperinci Petua UniApp untuk melaksanakan pengurusan penghalaan dan lompatan halaman. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan