//uni.navigateTo(OBJECT)保留当前页面，跳转到应用内的某个页面，使用uni.navigateBack可以返回到原页面。
//uni.redirectTo(OBJECT)关闭当前页面，跳转到应用内的某个页面。
//uni.reLaunch(OBJECT)关闭所有页面，打开到应用内的某个页面。
//uni.switchTab(OBJECT)跳转到 tabBar 页面，并关闭其他所有非 tabBar 页面。
//uni.navigateBack(OBJECT)关闭当前页面，返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈，决定需要返回几层。


// 暴露封装跳转方法
export class Navigation{
	// 保留当前页面，跳转到应用内的某个页面
    navigateTo(url){
        return uni.navigateTo({
			// 跳转路径
            url,
			// 窗口显示的动画效果
			animationType: 'slide-in-right',
			// 窗口动画持续时间
			animationDuration: 0
        })
    }
// 关闭当前页面，跳转到应用内的某个页面。
    redirectTo(url){
        return uni.redirectTo({
			// 跳转路径
             url
        });
    }
// 跳转到 tabBar 页面，并关闭其他所有非 tabBar 页面。
    switchTab(url){
        return uni.switchTab({
			// 跳转路径
             url,
			 success:res=>{
			 	// uni.hideTabBar()
			 }
        });
    }
// 关闭所有页面，打开到应用内的某个页面。
    relaunch(url){
        return uni.reLaunch({
			// 跳转路径
             url
        });
    }
    // 关闭当前页面，返回上一页面或多级页面
    navigateBack(pageSize){
        return uni.navigateBack({
			// 返回的页面数，如果大于现有页面就返回首页
            delta:pageSize,
			// 窗口显示的动画效果
			// animationType: 'slide-in-lfet',
			// 窗口动画持续时间
			// animationDuration: 0
        });
    }

}

