| 
					
				 | 
			
			
				@@ -0,0 +1,536 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	<zj-page-layout :hasFooter="true"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<u-notice-bar direction="column" icon=" " :text="['地址信息仅用于上门服务,隐私信息将完全保密']"></u-notice-bar> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<view class="form-container"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="clipboard"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="box"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<u--textarea v-model="clipboard" border="none" placeholder="试试粘贴“收件人姓名,手机号,详细地址”,可快速识别您的用户及地址信息"></u--textarea> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<view class="btns"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						<u-button text="清空" size="small" @click="clipboard = ''"></u-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						<u-button type="primary" text="识别" size="small" @click="shibie"></u-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="row"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="title">联系人</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="right input"><input type="text" placeholder="请输入联系人" v-model="formData.name"></view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="row"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="title">手机号码</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="right input"><input type="number" placeholder="请输入手机号码" v-model="formData.phone"></view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="row"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="title">所在地区</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="right"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<picker @change="onRegionChange" v-model="regionValue" mode="region"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						<view class="picker"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							<view v-if="regionValue.length">{{regionValue[0] + '/' +regionValue[1] + '/' +regionValue[2]}}</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							<view v-else style="color: #666666;">请选择省/市/区</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							<text class="iconfont icon-jinru"></text> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					</picker> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="row"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="title">所在街道</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="right"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<picker @change="onStreetChange" :value="streetValue" :range="streetList" range-key="name" :disabled="!regionValue[2]"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						<view class="picker"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							<view v-if="streetValue !== ''">{{streetList[streetValue].name}}</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							<view v-else style="color: #666666;">请选择街道</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							<text class="iconfont icon-jinru"></text> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					</picker> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="row"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="title">详细地址</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="right textarea"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<textarea placeholder="请输入详细地址" auto-height v-model="formData.address"></textarea> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<view class="r" @tap="getLocation"><text class="iconfont icon-dingwei1"></text>定位</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="row"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="title">门牌号</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="right input"><input type="text" placeholder="请输入门牌号" maxlength="15" v-model="formData.houseNo"></view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="row mt20"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="title">设为默认</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<view class="right default"><switch @change="switchChange" color="#3D8FFD" v-model="formData.defaultAddr" :checked="formData.defaultAddr" style="transform:scale(0.7)" /></view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<template slot="footer"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<view class="footer-btn-group"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<u-button text="删除" @click="handleDelete" v-if="editId"></u-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<u-button text="保存" type="primary" @click="submitForm"></u-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	</zj-page-layout> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	import {mapState} from 'vuex'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	import {getArea} from '@/common/utils/util.js'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				editId: null, // 编辑的id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				regionValue: [], // 省市区值 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				streetList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				streetValue: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				formData: { // 表单数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					name: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					phone: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					province: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					city: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					area: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					street: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					address: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					houseNo: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					defaultAddr: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				canClickSave: true, // 能否点击提交 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				clipboard: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		computed:{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			...mapState(['userInfo', 'isLogin', 'userId']) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		onLoad({id, addressData}) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			this.editId = id; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				uni.setNavigationBarTitle({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				  title: '编辑地址' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.getAddressData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(addressData) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				addressData = JSON.parse(addressData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.formData = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					name: addressData.name, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					phone: addressData.phone, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					province: addressData.province, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					city: addressData.city, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					area: addressData.area, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					address: addressData.address, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					houseNo: addressData.houseNo, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					defaultAddr: addressData.defaultAddr, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.regionValue = [addressData.province, addressData.city, addressData.area]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.getStreetList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			async getRegion(address) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				const result = new Promise((resolve, reject) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$axios({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						url: '/lbs/amap/region/query2', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						method: 'post', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						server: 'pc', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						params: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							address 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						resolve(res.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			async shibie() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				// 莫阿宝,13686123158,广东省广州市天河区棠下街道天河软件园 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				// console.log(this.smart(this.clipboard)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				const data = this.smart(this.clipboard); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.formData.name = data.name || ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.formData.phone = data.phone || ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(data.address) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					let addressData = await this.getRegion(data.address); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.formData.province = addressData.provinceName || ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.formData.city = addressData.cityName || ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.formData.area = addressData.areaName || ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.formData.address = data.address.replace(`${addressData.provinceName || ''}${addressData.cityName || ''}${addressData.areaName || ''}${addressData.name || ''}`, '') || ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.regionValue = [addressData.provinceName || '', addressData.cityName || '', addressData.areaName || '']; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					addressData.name && this.getStreetList(addressData.name); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			smart(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				data = this.stripscript(data); //过滤特殊字符 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				let obj = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				let copyData = JSON.parse(JSON.stringify(data)).split(" "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				copyData.forEach((item, index) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (item) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						let addressObj = this.smartData(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						console.log(addressObj) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						obj = Object.assign(obj, addressObj); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				return obj; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			smartData(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				let smartObj = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				//address=  data.replace(/\s/g, ''); //去除空格 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				// 手机号匹配(提取出手机号) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				let phone = data.match(/(86-[1][0-9]{10}) | (86[1][0-9]{10})|([1][0-9]{10})/g); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				// 如果存在手机号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if (phone) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					smartObj.phone = phone[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if(data != phone[0]) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						// 如果手机号是开头或结尾 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						if(data.startsWith(phone[0]) || data.endsWith(phone[0])) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							let remainData = data.replace(phone[0], ''); // 除了手机号,剩下的内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							// 如果还有剩下的内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							if(remainData) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								if (new RegExp(/省|市|区/).test(remainData)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+									smartObj.address = remainData; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								} else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+									smartObj.name = remainData; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						// 如果手机号在中间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							let remainDatas = data.replace(phone[0], '&&').split('&&'); // 除了手机号,剩下的内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							for(let i = 0; i < remainDatas.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								if(new RegExp(/省|市|区/).test(remainDatas[i])) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+									smartObj.address = remainDatas[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								}else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+									smartObj.name = remainDatas[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				// 如果不存在手机号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (new RegExp(/省|市|区/).test(data)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						smartObj.address = data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						smartObj.name = data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				return smartObj; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 过滤特殊字符 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			stripscript(s) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				s = s.replace(/(\d{3})-(\d{4})-(\d{4})/g, "$1$2$3"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				s = s.replace(/(\d{3}) (\d{4}) (\d{4})/g, "$1$2$3"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				var pattern = new RegExp( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					"[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“’。,、?-]" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				var rs = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (var i = 0; i < s.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					rs = rs + s.substr(i, 1).replace(pattern, " "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				rs = rs.replace(/[\r\n]/g, ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				return rs; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 获取地址信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			getAddressData() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.$axios({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					url: '/user/address/detail', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					params: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						userAddressId: this.editId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.formData = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						name: res.data.name, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						phone: res.data.phone, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						province: res.data.province, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						city: res.data.city, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						area: res.data.area, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						address: res.data.address, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						houseNo: res.data.houseNo, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						defaultAddr: res.data.defaultAddr, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.regionValue = [res.data.province, res.data.city, res.data.area]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.getStreetList(res.data.street); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 地图选点 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			getLocation() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				let that = this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				uni.chooseLocation({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				    success: function (res) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				        console.log(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						let SSQ_value = getArea(res.address); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						if(!SSQ_value.Province) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							SSQ_value.Province = SSQ_value.City; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						that.formData.province = SSQ_value.Province; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						that.formData.city = SSQ_value.City; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						that.formData.area = SSQ_value.Country; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						let regionValue = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						regionValue.push(SSQ_value.Province); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						regionValue.push(SSQ_value.City); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						regionValue.push(SSQ_value.Country); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						that.regionValue = regionValue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						that.formData.address = res.address.slice(res.address.indexOf(SSQ_value.Country) + SSQ_value.Country.length) + res.name; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						that.getStreetList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						that.streetValue = ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						that.formData.street = ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					fail: function(res) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						uni.getSetting({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							success: function(res) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								if (!res.authSetting['scope.userLocation']) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+									uni.showModal({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+										title: '是否授权当前位置', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+										content: '需要获取您的地理位置,请确认授权,否则地图功能将无法使用', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+										success(tip) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+											if (tip.confirm) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+												uni.openSetting({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+													success: function(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+														if (data.authSetting["scope.userLocation"] === true) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+															that.$successToast('授权成功'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+															setTimeout(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+																that.getLocation(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+															}, 1000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+														} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+													} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+												}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+											} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+										} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+									}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+								} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 切换省市区 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			onRegionChange(e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				console.log(e.detail); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.regionValue = e.detail.value; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.formData.province = this.regionValue[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.formData.city = this.regionValue[1]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.formData.area = this.regionValue[2]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.getStreetList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.streetValue = ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 获取街道列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			getStreetList(street) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.$axios({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					url: '/common/street', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					params: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						province: this.regionValue[0], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						city: this.regionValue[1], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						area: this.regionValue[2], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.streetList = res.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if(street) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						let index = this.findElem(this.streetList, 'name', street); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						this.streetValue = index; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						this.formData.street = street; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 切换街道 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			onStreetChange(e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				console.log(e.detail.value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.streetValue = e.detail.value; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.formData.street = this.streetList[this.streetValue].name; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			findElem(array, attr, val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			    for (var i = 0; i < array.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			        if (array[i][attr] == val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			            return i; //返回当前索引值 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			    return -1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			switchChange(e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				console.log(e.detail.value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.formData.defaultAddr = e.detail.value; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 验证数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			vailateData() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(!this.formData.name) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$toast('请填写姓名'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(!this.formData.phone) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$toast('请填写手机号码'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(!(/^1[3456789]\d{9}$/.test(this.formData.phone))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$toast('请填写正确的手机号码'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(!this.formData.province) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$toast('请选择所在地区'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(!this.formData.street) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$toast('请选择所在街道'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(!this.formData.address) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$toast('请填写详细地址'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 提交表单 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			submitForm() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if (!this.canClickSave) return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.canClickSave = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				setTimeout(() => { this.canClickSave = true }, 3000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(!this.vailateData())return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				let params = this.formData; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				params.userId = this.userId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				let url = ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if(this.editId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					params.userAddressId = this.editId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					url = '/user/address/update'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					url = '/user/address/save'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.$axios({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					url: url, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					type: 'json', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					params, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					isLoading: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$successToast(this.editId? '编辑成功':'添加成功'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$backPage(1, 1000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			// 删除 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			handleDelete() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				this.$modal({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					content: '确定要删除该地址吗?', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}).then(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					this.$axios({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						url: '/user/address/del', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						params: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							userAddressId: this.editId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						isLoading: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}).then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						this.$successToast('删除成功'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						this.$backPage(1, 1000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}).catch(() => {}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style lang="scss"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.form-container { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.clipboard { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			padding: 20rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			background: #FFFFFF; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.box { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				background: #f5f5f5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				::v-deep .u-textarea { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					background: none !important; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				.btns { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					padding: 20rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					justify-content: flex-end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					::v-deep .u-button { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						width: 100rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						margin-left: 30rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						margin-right: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		.row { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			background: #FFFFFF; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			min-height: 88rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			padding: 0 20rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			justify-content: space-between; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			border-bottom: 1px solid #f5f5f5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.title { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				flex-shrink: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				width: 160rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				font-size: 28rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				color: #333333; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.right { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				flex: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				width: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				input { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					font-size: 28rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				.picker { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					justify-content: space-between; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					image { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						width: 16rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						height: 28rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.textarea { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				justify-content: space-between; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				textarea { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					padding: 10rpx 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				.r { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					flex-shrink: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					font-size: 24rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					color: #666666; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					margin-left: 15rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					.iconfont { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						font-size: 36rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						color: #999999; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						margin-right: 4rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			.default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				justify-content: flex-end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				switch { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					margin-right: -20rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</style> 
			 |