一、新建navto.js

const navto = function(url, data) {
	// url参数拼接
	url += (url.indexOf('?') < 0 ? '?' : '&') + param(data)
	
	uni.navigateTo({
		url
	})
}

// 返回上一页
const navBack = function(){
	uni.navigateBack();
}

// 格式化参数对象
function param(data) {
	let url = ''
	for (var k in data) {
		let value = data[k] !== undefined ? data[k] : ''
		url += '&' + k + '=' + encodeURIComponent(value)
	}
	return url ? url.substring(1) : ''
}

export{
	navto,
	navBack
}

二、全局挂载

import * as navTo from '@/common/navto'
Vue.prototype.$navto = navTo;

三、在template中内直接调用

<view class="btn" @click="$navto.navto('login/login')">登录</view>
<view class="btn" @click="$navto.navto('login/login',{'user':68889888,'pwd':123456})">登录</view>

最终就是这样将参数拼接到url上 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐