uni-app 路由跳转和传参 -璇泰初网络
首页 > HTML & CSS > uni-app 入门教程 > uni-app 路由跳转和传参

uni-app 路由跳转和传参

1. 前言

在没接触过 web 开发之前,大家对路由这两个字应该也比较熟悉,就是我们平时使用无线网络时接触到的路由器。

其实 web 开发中的路由与我们平时接触到的路由器原理是一样的,都是将不同的请求地址转发给相应的控制器进行处理。

在 web 开发中的路由会根据不同的 url 将请求分配到能处理这个 URL 的程序或模块,根据不同的 url 地址展示不同的页面或内容。

uni-app 有自己的一套路由管理方式,与 Vue Router 不同。页面路由需要在 pages.json 文件中配置,与小程序在 app.json 中配置页面路由是类似的。

那路由在项目中的具体作用是怎样的呢?我们这节课来了解一下。

2. 路由的优缺点

2.1 优点

  • 网页更加流畅

传统web开发的每一次请求都需要服务器来进行处理,但是有些操作只需要修改页面逻辑就可以实现用户需要的效果,不用请求服务器,这时路由就派上用场了。

使用路由开发,用户的请求不需要每次都经过服务器来处理,提高了网页的流畅性,可以快速将网页内容展现给客户。

  • 方便用户分享收藏网页

使用路由进行开发,页面内容会根据 url 的改变而改变,而不会像js处理的那样,只修改了页面内容,而不会改变 url。所以当用户收藏与分享页面时,通过 url 就会直接打开指定的页面,用户体验较好。

2.2 缺点

  • 没有合理利用缓存

使用浏览器时,点击浏览器的前进,后退按钮,使用路由开发的项目,会重新发送请求,缓存利用不合理。

  • 无法记住当前页面的滚动位置

在使用浏览器的前进,后退按钮时,单页面无法记住之前滚动的位置。

3. 配置路由

3.1 自动配置路由

我们来创建一个 page1 页面。右键点击 pages 文件夹,选择新建页面。在下面新弹出的窗口,系统会默认帮我们勾选“在 pages.json 中注册的选项”,这样页面创建完成后,路由也会自动配置好。

点击创建,现在 pages.json 文件中会自动添加下面的路由代码。

实例:

{
  "path" : "pages/page1/page1",
  "style" : {}
}

3.2 手动配置路由

如果需要自己手动添加路由,直接在 pages.json 文件的 pages 对象中添加即可。我们一般配置 path 和 style 两个属性。

自己配置的时候要注意大括号要配对,不要落下逗号。

4. 路由跳转

uni-app 有两种方式进行路由跳转:使用 navigator 组件跳转、调用 API 跳转,下面我们来分别了解这两种方式如何跳转。

4.1 navigator 组件跳转

我们来实现从 index 页面跳转到刚刚创建的 page1 页面,编辑 pages/index/index.vue 文件。

在 data 中添加变量 url。

实例:

data() {
  return {
    url:"/pages/page1/page1"
  }
}

然后在 template 标签中添加下面代码。

实例:

<!-- open-type的表示跳转方式 -->
<!-- open-type为navigate,如果不写open-type跳转方式默认为navigate -->
<navigator :url="url" open-type="navigate">
  <button type="default">跳转到新页面</button>
</navigator>
<!-- open-type为redirect -->
<navigator :url="url" open-type="redirect">
  <button type="default">在当前页打开</button>
</navigator>
<!-- open-type为switchTab -->
<navigator :url="url" open-type="switchTab">
  <button type="default">跳转到tab页面</button>
</navigator>

点击工具栏–运行–运行到内置浏览器,查看效果。点击按钮就能通过open-type指定的跳转方式跳转到 page1 页面。

4.2 API 跳转

继续编辑 pages/index/index.vue 文件,我们创建几个 methods 方法,在方法里面实现页面跳转。

实例:

navigateTo(){
  uni.navigateTo({
    url: this.url
  })
},
redirectTo(){
  uni.redirectTo({
  url: this.url
  });
},
switchTab(){
  uni.switchTab({
    url: this.url
  });
}

在 template 标签中添加下面代码,添加点击事件。

实例:

<button type="default" @tap="navigateTo">跳转到新页面</button>
<button type="default" @tap="redirectTo">在当前页打开</button>
<button type="default" @tap="switchTab">跳转到tab页面</button>

这样我们就可以点击工具栏–运行–运行到内置浏览器查看效果了,与上面的效果是一样的

5. 路由传值

从 A 页面跳转到 B 页面,我们想要将 A 页面的值传到 B 页面,可以将要传递的值直接在跳转页面的 URL 路径后面拼接,然后再在 B 页面 onload 里面接收这个值。

现在我们想要从 index 页面跳转到 page1 页面,在 index 页面中,将想要传递的值拼接到 url 的后面,下面我们写代码演示一下。

编辑 pages/index/index.vue 文件。

实例:

// 添加跳转按钮
<button type="default" @tap="navigateData">跳转到 page1 页面</button>

//添加 navigateData 方法,将参数拼接到 URL 后面
navigateData(){
  uni.navigateTo({
    url: this.url + "?data='我是从 index 页面传过来的值'"
  })
}

接下来在 page1 页面接收参数,编辑 pages/page1/page1.vue 文件。

实例:

onLoad(options) {
  var data = options.data
  console.log(data)
}

点击工具栏–运行–运行到内置浏览器,查看效果。点击「跳转到 page1 页面」的按钮,跳转到 page1 页面后,在控制台会打印出传递过来的data值。

Tips :url有长度限制,太长的字符串会传递失败,可以使用缓存、窗体通信等解决。

6. 小结

本节课程我们主要学习了路由以及路由传参,本节课程的需要掌握的重点如下:

  • 了解路由是什么,掌握路由的配置;

  • 掌握路由的两种跳转方式:navigator 组件跳转、调用 API 跳转;

  • 掌握路由的传参。

本文来自互联网用户投稿,不拥有所有权,该文观点仅代表作者本人,不代表本站立场。
访问者可将本网站提供的内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站,邮箱:80764001@qq.com,予以删除。
索引目录
  • uni-app 路由跳转和传参
    • 1. 前言
    • 2. 路由的优缺点
      • 2.1 优点
      • 2.2 缺点
    • 3. 配置路由
      • 3.1 自动配置路由
      • 3.2 手动配置路由
    • 4. 路由跳转
      • 4.1 navigator 组件跳转
      • 4.2 API 跳转
    • 5. 路由传值
    • 6. 小结
© 2023 PV138 · 站点地图 · 免责声明 · 联系我们 · 问题反馈
京ICP备16004482号-1
京公网安备11010802040649号

相关内容推荐

制作网页考虑seo天津推广优化seoSEO写作软件推荐seo优化排名提升seo项目ppt模板宁安seo优化公司seo获客软件seo舆情处理方案东莞快速seo系统溧阳无锡seo优化重庆seo推广排名找seo优化面试呈贡谷歌seo推广多页面加工seo原阳网络seo优化通化网站seo服务长沙seo问珠峰怎样做好谷歌seoasp企业站seoseo霸屏培训seo建设引擎排名seo公司收费标准西安站内seoseo做什么项目宜昌seo全网推广西安seo网站管理什么网站seo好seo优化提高权重seo攻略课程教案小红书笔记seoseo培训价格多少店内seo分析淄博seo优化优势香洲区seo图片链接 seo安徽希望科技seo电影网seoseo优化涨粉seo优化方法大全ai网站如何seoseo网站架构分析广州seo工资多少延平网页seo推广合格的seo制作宁夏seo优化求购新疆seo优化技巧seo young clock成员天水短视频seo珠海个人seo外包临清seo公司报价seo内部链接图片合肥seo综合查询西安seo优化教程企业seo哪家不错seo质量外链seo优化流量刷如何运营到seoSEO重庆美食做法移动seo排名软件张晓刚 seo野狼seo团队博客海西seo优化平台中山外贸推广seoSEO实战篮球蛋糕江阴澄江seo外包家居网站seo山东seo优化资质郑州seo新算法海口seo网站结构seo网上培训学费中划线域名seo长沙seo优化seoc沈阳搜狗seo方法吉水seo网站优化中企动力 seo福州seo营销技巧杭州seo排名代理麒麟seo优化发包seo就业培训机构杭州seo服务方案武汉seo全网营销付费推广重庆seo天津seo招聘信息菜鸟seo教学视频适合seo的电脑seo的工作方向免费seo软件推广谷歌seo熊掌号seo新手书籍园区seo排名价格江苏seo建站优化seo必用软件小米雨伞seo优化谷歌seo在线学习seo优化找哪家关于麻将seo文章好搜seo信息简单的seo教程SEO故事文案有趣天门seo优化视频seo网站推广自学沈阳谷歌seo棋牌做seo推广南通来客seoseo以后的前景seo kang jun韩剧seo作用与原理深圳seo排名外包品牌seo优化渠道求职seo网站案例seo网站排名提升seo底薪怎么算seo灰色词推广静态网站实施seoseo怎么优化链条泗洪seo是什么华为应用商店seo福州seo营销技巧sem seo推广招聘广州seo项目价格企业seo排名企业seo太简单了湛江seo营销推广seo优化优惠码湛江网站seo步骤站群seo日志余杭seo网站推广莆田seo整站排名seo具体案例分享陈村seo培训厦门seo新算法seo同ip网站大连seo全网营销南昌广州seo外包花桥seo排名服务吉安电商seoseo运营怎么用淮阴seo优化推广公众号seo 起名青青草seo常用的seo平台现在seo还行吗淘宝SEO基本思维长春页面seo优化聊城seo好用吗seo思维的意思美橙seo优化长沙seo页面优化朔州seo优化培训律师seo优化价位seo技术怎么实现德阳网站seo外包Seo sem前景如何seo搭建是什么seo的简单理解建阳正规seo价格媒体seo优化包括河南seo优化内容seo快站建设网站推广seo网站博客上善seoseo排名的要素公司seo官网seo怎么引蜘蛛seo变现 qq群福建seo推广排名全国seo优化排名廊坊网站seo方法西安seo 无限退款首页seo标题模板杭州seo推广营销忠县seo网络推广定伟seo教学做360seoseo应该学什么南海seo优化规划seo自然搜索优化珠海校园seo优化seo描述页面优化渭南快照seo优化云克网络seo静态网站实施seoseo影响排名因素漳州seo哪家好揭阳seo排名外包浒山seo优化seo 好的程序嘉兴seo优化词惠城seo推广seo地图有几种厦门seo付费推广佳木斯seo优化公司从seo数据中看seo中文全称是seo博客哪种好系统seo技术学习建阳公司seo优化seo具体做法湖南网页优化seo蘑菇街的SEO

合作伙伴

璇泰初网络

www.pifajia.net.cn
www.kmpower.cn
www.chaoshanxing.com
kuai.urkeji.com
seo.07yue.com
www.jsfengchao.com
qiansan.seo5951.com
www.zhdaili.cn
zz1.urkeji.com
www.haowangjiao.cc
baidu.07yue.com
qiansan.seo5951.com
seo.xtcwl.com
www.mtcddc.cn
www.akz.net.cn
www.kmpower.cn
jl.urkeji.com
www.te3.com.cn
zz1.urkeji.com
zz1.urkeji.com