| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 | 
							- <template>
 
- 	<u-navbar :title="title" :bgColor="bgColor" :titleStyle="titleStyle">
 
- 		<view class="u-nav-slot" slot="left" style="display: flex;background-color: transparent;">
 
- 			<u-icon v-if="showback" name="arrow-left" size="44" :color="leftIconColor" @tap="toBack(backUrl)"></u-icon>
 
- 		</view>
 
- 	</u-navbar>
 
- </template>
 
- <script>
 
- 	export default {
 
- 		options: {
 
- 			styleIsolation: 'shared'
 
- 		},
 
- 		props: {
 
- 			title: {
 
- 				typeof: String,
 
- 				default: ''
 
- 			},
 
- 			showback: {
 
- 				typeof: Boolean,
 
- 				default: true
 
- 			},
 
- 			backUrl: {
 
- 				typeof: String,
 
- 				default: ''
 
- 			},
 
- 			bgColor: {
 
- 				typeof: String,
 
- 				default: '#ffffff'
 
- 			},
 
- 			leftIconColor: {
 
- 				typeof: String,
 
- 				default: '#111111'
 
- 			},
 
- 			titleStyle: {
 
- 				typeof: Object,
 
- 				default: {
 
- 					fontSize: '36rpx',
 
- 					fontWeight: "bold",
 
- 					color: '#111111'
 
- 				}
 
- 			},
 
- 			backAlert:{
 
- 				typeof:Boolean,
 
- 				default:false
 
- 			}
 
- 		},
 
- 		data() {
 
- 			return {
 
- 				tabUrls: [
 
- 					'/pages/index/index',
 
- 					'/pages/touristMap/index',
 
- 					'/pages/oneCodePass/index',
 
- 					'/pages/service/index',
 
- 					'/pages/my/index'
 
- 				]
 
- 			}
 
- 		},
 
- 		methods: {
 
- 			toBack(url) {
 
- 				if(this.backAlert){
 
- 					uni.showModal({
 
- 						title:'温馨提示',
 
- 						content:'您正在填写问卷中,系统仅保留当前问卷的作答进度,是否确认返回?',
 
- 						success: (res) => {
 
- 							if(res.confirm){
 
- 								this.dealBack(url)
 
- 							}
 
- 						}
 
- 					})
 
- 				}else this.dealBack(url)
 
- 			},
 
- 			dealBack(url){
 
- 				if (!url) {
 
- 					if (uni.getStorageSync('options')) {
 
- 						uni.redirectTo(JSON.parse(decodeURIComponent(uni.getStorageSync('options'))));
 
- 						return uni.removeStorageSync('options');
 
- 					}
 
- 					let canNavBack = getCurrentPages();
 
- 					if (canNavBack && canNavBack.length > 1) uni.navigateBack();
 
- 					else uni.reLaunch({
 
- 						url: '/pages/index/index'
 
- 					})
 
- 				} else {
 
- 					if (this.tabUrls.find(u => u == url)) uni.reLaunch({
 
- 						url
 
- 					});
 
- 					else uni.redirectTo({
 
- 						url
 
- 					});
 
- 				}
 
- 			},
 
- 			toHome() {
 
- 				uni.reLaunch({
 
- 					url: '/pages/index/index'
 
- 				})
 
- 			}
 
- 		}
 
- 	}
 
- </script>
 
- <style lang="less" scoped>
 
- 	.u-navbar--fixed {
 
- 		z-index: 99999 !important;
 
- 	}
 
- </style>
 
 
  |