uniapp 页面跳转传值和接收
前端面试题库地址:https://www.yuque.com/sxd_panda/sdluga
1、首先介绍最原始的跳转方法,类似于html中的a标签,不过在uniapp中需要将a标签换成
<navigator url='跳转的地址'> …… </navigator>
2、下面我们来重点介绍下跳转传值的方法
- 给点击事件传入id
<view @tap="toOpportnity(item.id)">测试信息……</view >
- Methods中写方法
toOpportnity(id) {
uni.navigateTo({ //点击跳转的方法
url: 'opportunity-form?id=' + id //需要跳转的页面路径,使用问号进行id的传值,然后再拼接一个要传入的id
//对象传参方式 url:'../../pages/disabled/subsidie?listObj=' + encodeURIComponent(JSON.stringify(obj))
})
}
- 详情页接收参数
/**
* 写一个onLoad函数
* @params {options} 上个页面传过来的参数信息,这个名字可以自定义
*/
onLoad(options) {
// console.log(options); 查看传入的id值
}
对象传参的接收方法
//this.leadobj(上个页面传过来的对象名称,即?后面的那个名称) = JSON.parse(decodeURIComponent(options.leadobj));
- 单个参数的接收,这里使用id来进行介绍首先要把传递过来的id进行赋值请求接口,接口的url地址后面要加上传递过来的id【/${this.id}/】
- 完整步骤如下:
onLoad(options){
this.id = options.id;
console.log('传过来的id值为:' + options.id);
let that = this
uni.request({
url:`${this.$serverUrl}/opportunity/${this.id}/`,
header:{
'Authorization': this.uerInfo.token
},
success(res){
console.log(res);
// 赋值操作
that.opportunity = res.data;
}
})
}
对象传参报错解决方案详细请看本篇文章
if (jsonData != null) {
JSON.parse(jsonData)
}
附:常见的请求方式
-
GET : 请求页面, 并返回页面内容【问服务器要数据】
-
POST : 大多用于提交表单或上传文件,数据包含在请求体中【把数据提交给服务器】
-
HEAD : 类似于GET请求,只不过返回的响应中没有具体的内容,用于获取报头
-
PUT : 从客户端向服务器传送的数据取代指定文档中的内容【修改服务器上的数据】
-
DELETE : 请求服务器删除指定的页面
-
CONNECT : 把服务器当作跳板,让服务器代替客户端访问其他页面
-
OPTIONS : 允许客户端查看服务器的性能
-
TRACE : 回显服务器收到的请求,主要用于测试或诊断
本文来自博客园,作者:奔跑的前端猿,转载请注明原文链接:https://www.cnblogs.com/sxdpanda/p/12965877.html
如需了解更多文章,请移步:https://www.yuque.com/sxd_panda