| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318 | <template>	<view class="myreport-box">		<cu-custom :isBack="true" bgColor="bg-blue">			<block slot="content">修改密码</block>		</cu-custom>		<view class="content-box">		<form>			<view class="cu-form-group">				<view class="title">用户名</view>				<input placeholder="请输入账号" v-model="userName" name="input" disabled="false"></input>			</view>			<view class="cu-form-group">				<view class="title">原密码</view>				<input placeholder="请输入原密码" type="password" displayable  v-model="oldPassword" name="input"></input>			</view>			<view class="cu-form-group">				<view class="title">新密码</view>				<input placeholder="请输入新密码" type="password" displayable  v-model="newPassword" name="input"></input>			</view>			<view class="cu-form-group">				<view class="title">确认密码</view>				<input placeholder="请输入新密码" type="password" displayable  v-model="checkPassword" name="input"></input>			</view>		</form>		<view class="info">注意:新密码长度必须在6-16位,并且同时包含字母和数字</view>		<button   @click="bindModify" class="top-40 bg-gradual-blue shadow-blur round cu-btn block lg " >确认修改</button>		</view>	</view></template><script>	import * as $auth from "@/common/auth.js"	import loginService from "@/api/auth/loginService"	import {		mapActions	} from 'vuex'	export default {		data() {			return {				newPassword: '',				checkPassword: '',				userName: '',				oldPassword: '',							}		},		created() {			this.userInfo = $auth.getUserInfo()			this.userName = this.userInfo.name		},		methods: {										bindModify() {				if (!this.oldPassword) {					uni.showToast({						icon: 'none',						title: '请输入原始密码'					});					return;				}				if (this.checkPassword !== this.newPassword) {				  uni.showToast({					icon: 'none',					title: '确认密码与新密码不一致'				  });				  return;				} else if (this.checkPassword && (this.checkPassword.length < 6 || this.checkPassword.length > 16)) {				  uni.showToast({					icon: 'none',					title: '密码长度为6-16位'				  });				  return;				} else if (!(/\d/.test(this.checkPassword) && /[a-zA-Z]/.test(this.checkPassword))) {				  uni.showToast({					icon: 'none',					title: '密码必须包含字母+数字'				  });				  return;				}				loginService.savePwd({					'oldPassword': this.oldPassword,					'newPassword': this.newPassword				}).then(res => {				  // this.$store.commit('SET_TOKEN',data.token);				  // this.refreshUserInfo();				  // uni.reLaunch({				  // 	url: '../index/index',				  // });				  uni.showToast({				  	icon: 'success',				  	title: '修改密码成功'				  });				}).catch(e => {				  console.error(e)				})			}		}	}</script><style>	.login-box {		width: 100vw;		height: 100vh;		background-size: 100% 100%;		display: flex;		flex-direction: column;		align-items: center;		position: relative;	}		.info{		margin-top: 30rpx;		font-size: 30rpx;		color: #333;	}	.send-button-2 {		font-size: 26rpx;		color: gray;		margin-top: 20rpx;		width: 300rpx;		height: 80rpx;		background: #fff;		box-shadow: 0rpx 2rpx 30rpx 0rpx rgba(0, 0, 0, 0.2);		border-radius: 40rpx;		text-align: center;		line-height: 80rpx;		text-shadow: 0rpx 0rpx 1rpx rgba(0, 0, 0, 0.35);		align-self: flex-end;	}	.myreport-box {		width: 100vw;		height: 100vh;		background-size: 100% 100%;		overflow-x: hidden;		overflow-y: auto;		box-sizing: border-box;	}	.flex-center-box {		display: flex;		flex-direction: column;		justify-content: center;		align-items: center;		padding-top: 50rpx;	}	.site-box {		position: absolute;		bottom: 30rpx;		display: flex;		justify-content: center;		color: #fff;		align-items: center;	}	.gh-icon {		width: 32rpx;		height: 32rpx;		margin-right: 10rpx;	}	.logo-image {		width: 626rpx;		height: 144rpx;		margin-top: 178rpx;	}	.circle-logo {		width: 185rpx;		height: 185rpx;		margin-top: 75rpx;		margin-bottom: 63rpx;	}	.send-button {		margin-top: 20rpx;		width: 300rpx;		height: 100rpx;		background: #fff;		box-shadow: 0rpx 2rpx 30rpx 0rpx rgba(0, 0, 0, 0.2);		border-radius: 50rpx;		text-align: center;		line-height: 100rpx;		font-size: 30rpx;		color: #1F94FE;		text-shadow: 0rpx 0rpx 1rpx rgba(0, 0, 0, 0.35);		align-self: flex-end;	}	.new-input-box {		width: 600rpx;		height: 100rpx;		border-radius: 5rpx;		background: #fff;		display: flex;		flex-direction: row;		box-sizing: border-box;		padding-left: 40rpx;		align-items: center;		border-bottom: 2rpx solid #ddd;	}	.input-icon {		width: 32rpx;		height: 32rpx;		margin-right: 20rpx;	}	.login-button {		margin-top: 60rpx;		width: 600rpx;		height: 80rpx;		background: #fff;		box-shadow: 0rpx 2rpx 30rpx 0rpx rgba(0, 0, 0, 0.2);		border-radius: 40rpx;		text-align: center;		line-height: 80rpx;		font-size: 36rpx;		color: #1F94FE;		text-shadow: 0rpx 0rpx 1rpx rgba(0, 0, 0, 0.35);	}	.info-box {		margin-top: 24rpx;		color: #fff;		font-size: 26rpx;		display: flex;		justify-content: space-between;		width: 500rpx;	}	.zai-box {		padding: 0 50upx;		position: relative;	}	.zai-logo {		width: 100%;		width: 100%;		margin-top: 100upx;		margin-bottom: 100upx;		padding: 20px;		height: 310upx;	}	.zai-title {		position: absolute;		top: 0;		margin-top: 100upx;		margin-bottom: 100upx;		line-height: 340upx;		font-size: 68upx;		color: #fff;		text-align: center;		width: 100%;		margin-left: -50upx;	}	.zai-form {		margin-top: 300upx;	}	.zai-input {		background: #e2f5fc;		margin-top: 30upx;		border-radius: 100upx;		padding: 20upx 40upx;		font-size: 36upx;	}	.input-placeholder,	.zai-input {		color: #94afce;	}	.zai-label {		padding: 60upx 0;		text-align: center;		font-size: 30upx;		color: #a7b6d0;	}	.zai-btn {		background: #ff65a3;		color: #fff;		border: 0;		border-radius: 100upx;		font-size: 36upx;	}	.zai-btn:after {		border: 0;	}	/*按钮点击效果*/	.zai-btn.button-hover {		transform: translate(1upx, 1upx);	}	.cu-form-group .title {		min-width: calc(4em + 15px);	}		.content-box{		width: 650rpx;		margin-left: auto;		margin-right: auto;		margin-top: 60rpx;	}		.top-40{		margin-top: 60rpx;	}</style>
 |