vue跳转页面传递参数
本章节主要是讲解在vue跳转页面时候怎么传递参数。最后会发上实现源代码。
准备工作
首先准备好两个vue文件,配置好page.json页面路径
功能实现
js中写好一个要传递的参数a、跳转时需要的事件tiaozhuan()、在a参数加上数据,下面举例说明。
// js举例代码 data() { return { a: [] } }, onLoad() { this.addtemp() }, methods: { addtemp() { this.a.push({name:"张三"}) }, tiaozhuan() { uni.navigateTo({ url: '/pages/uni-style/navi' }) }
跳转参数的方式就是在url中添加数据名和解析对象的字符串。通过JSON.stringify对a对象解析出字符串,语法格式如下:
url:‘/…/…/…?a=’+JSON.stringify(this,a)
其中a是参数名,this.a是参数的实际JSON数据。跳转后接收的方式是在onLoad加载事件中取值
// An highlighted block data() { return { test: '' } }, onLoad(options) { let temp = JSON.parse(options.a) this.test = temp[0].name console.log(this.test) }
在这里我做了一个test作为接收的参数,用options和JSON.parse方法接收值,JSON.parse主要作用是把一个JSON字符串解析成一个对象。通过中间值temp来对新页面数据进行赋值。接下就是代码和成品展示。
下面展示。
// 跳转前页面 <template> <view> <view @click="tiaozhuan">跳转</view> </view> </template> <script> export default { data() { return { a: [] } }, onLoad() { this.addtemp() }, methods: { addtemp() { this.a.push({name:"张三"}) }, tiaozhuan() { uni.navigateTo({ url: '/pages/uni-style/navi?a=' + JSON.stringify(this.a) }) } } } </script> <style> </style>
// 跳转后代码 <template> </template> <script> export default { data() { return { test: '' } }, onLoad(options) { let temp = JSON.parse(options.a) this.test = temp[0].name console.log(this.test) } } </script> <style> </style>
成品展示
点击跳转后

