赞
踩
//index.vue页面
<template>
<view class="content">
<view class="title">
<button @click="goPage" type="default">跳转</button>
</view>
<view class="">class页传回来的字段:{{value}}</view>
</view>
</template>
<script>
export default {
data() {
return {
value: ''
}
},
onLoad() {
},
onShow() {
let pages = getCurrentPages();
let currPage = pages[pages.length - 1]; // 当前页的实例
console.log(currPage)
this.value = currPage.$vm.value
},
methods: {
goPage() {
uni.navigateTo({
url: '../class/index'
})
}
}
}
</script>
<style>
.title {
padding: 30rpx;
}
</style>
// class.vue页面
<template>
<view class="content">
<input class="ipt" v-model="keyword" type="text" value="" placeholder="请输入..." />
<view class="btn">
<button @click="submit" type="primary" size="default">返回首页</button>
</view>
</view>
</template>
<script>
export default {
data() {
return {
keyword: '',
}
},
onLoad() {
},
methods: {
submit() {
let pages = getCurrentPages()
let nowPage = pages[pages.length - 1]; //当前页页面实例
let prevPage = pages[pages.length - 2]; //上一页页面实例
console.log(prevPage)
prevPage.$vm.value = this.keyword
uni.navigateBack({
delta:1
})
}
}
}
</script>
<style>
.ipt {
width: 500rpx;
border: 1rpx solid #333;
margin-top: 30rpx;
margin-left: 30rpx;
padding: 10rpx;
}
.btn {
padding: 50rpx 30rpx;
}
.title {
font-size: 30rpx;
background: pink;
color: #fff;
width: 600rpx;
height: 80rpx;
text-align: center;
line-height: 80rpx;
margin: 30rpx auto;
border-radius: 10rpx;
}
</style>
/**
* 返回上一页
* @param {Array | String} params 需要赋值的字段
* 1、数组对象形式 可携带多个字段 [{ obj: 'info', label: 'name', value: 'kitty' }]
* obj: 需要赋值的字段为对象的
* 2、字符串形式 直接携带属性名即可
* @param {String} value params为字符串时用到 携带的属性值
* @param {Number} num 返回的页面数
*/
export function goNavigateBack (params, value, num = 1) {
let pages = getCurrentPages();
let prePage = pages[pages.length - 2] // 上一页
if (!prePage) {
uni.switchTab({ url: '/pages/index/index' }) // 我这里是回到首页,具体可自行设置
return
}
if (typeof params == 'object' && Array.isArray(params)) {
params.forEach(it => {
if (it.obj) {
prePage.$vm[it.obj][it.label] = it.value
} else {
prePage.$vm[it.label] = it.value
}
})
} else {
prePage.$vm[params] = value
}
uni.navigateBack({
delta: num
})
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。