uniapp页面路由跳转及路由参数传递以及字符过长的处理方法~

1、首先介绍下uniapp的页面路由跳转。

uni.navigateTo(OBJECT),保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack可以返回到原页面。

// 跳转至详情页
uni.navigateTo({
//这里直接填跳转页面的绝对路径或相对路径即可
    url:'../../pages/detail/detail'
})

2、路由参数传递(可实现组件通信)

// 跳转至详情页
uni.navigateTo({
// 用JSON.stringify将对象转为字符串,因为这里我传入的e是一个对象
    url:`../../pages/detail/detail?key=${JSON.stringify(e)}`
})

3、目标组件的onLoad函数可得到传递的参数

onLoad(e) {
// 拿到父组件传递过来的参数,并将字符串转为js对象
    this.detaillist = JSON.parse(e.key)
},

4、字符串或参数过长怎么办呢?

4.1使用encodeURI(uri)对过长字符串进行转码。

var a ="张三";
encodeURI(a)// "%E5%BC%A0%E4%B8%89"

4.2使用decodeURI(encodedURI)解码由encodeURI 

var b = encodeURI("张三");//%E5%BC%A0%E4%B8%89
decodeURI(b) //张三

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值