updatePassword.vue 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <template>
  2. <view class="page">
  3. <!-- #ifdef H5-->
  4. <uni-nav-bar v-if="!$isWxBrowser()" :fixed="true" background-color="#FFE05C" :border="false" :statusBar="false" left-icon="left" title="修改登录密码" @clickLeft="back" />
  5. <!-- #endif -->
  6. <view :style="{'marginTop':'10rpx'}">
  7. <u--form labelPosition="left" :model="form" :rules="rules" ref="uForm">
  8. <u-form-item :labelWidth="80" label="手机号:" prop="username" ref="item1">
  9. <u--input v-model="form.username" placeholder="请输入手机号"></u--input>
  10. </u-form-item>
  11. <u-form-item :labelWidth="80" label="原密码:" prop="oldPassword" ref="item1">
  12. <u--input v-model="form.oldPassword" placeholder="请输入原密码" type="password"></u--input>
  13. </u-form-item>
  14. <u-form-item :labelWidth="80" label="新密码:" prop="newPassword" ref="item1">
  15. <u--input v-model="form.newPassword" placeholder="请输入新密码" type="password"></u--input>
  16. </u-form-item>
  17. </u--form>
  18. <view :style="{'marginTop':'100rpx'}">
  19. <button class="customStyle" @click="updatePassword">提交</button>
  20. </view>
  21. </view>
  22. <!--#ifdef H5-->
  23. <liu-drag-button v-if="$isWxBrowser()" @clickBtn="back">返回</liu-drag-button>
  24. <!--#endif-->
  25. </view>
  26. </template>
  27. <script>
  28. export default {
  29. data() {
  30. return {
  31. form:{
  32. username:'',
  33. oldPassword:'',
  34. newPassword:''
  35. },
  36. rules: {
  37. 'username': {
  38. type: 'string',
  39. required: true,
  40. min:11,
  41. max: 11,
  42. pattern:this.$phonePattern,
  43. message: '请输入正确的电话号码',
  44. trigger: ['blur', 'change']
  45. },
  46. 'oldPassword': {
  47. type: 'string',
  48. min:6,
  49. max: 16,
  50. required: true,
  51. message: '请输入6-18位老密码',
  52. trigger: ['blur', 'change']
  53. },
  54. 'newPassword': {
  55. type: 'string',
  56. min:6,
  57. max: 16,
  58. required: true,
  59. message: '请输入6-18位新密码',
  60. trigger: ['blur', 'change']
  61. }
  62. },
  63. }
  64. },
  65. methods: {
  66. back(){
  67. let pages = getCurrentPages()
  68. if (pages.length > 1){
  69. uni.navigateBack({
  70. delta: 1,
  71. fail:err=>{
  72. console.log(err)
  73. }
  74. })
  75. }else {
  76. uni.switchTab({
  77. url: '/pages/my/my'
  78. });
  79. }
  80. },
  81. updatePassword(){
  82. console.log("+++++++++++++++++++")
  83. this.$refs.uForm.validate().then(res => {
  84. this.$api.login.updatePassword(this.form).then(res=>{
  85. uni.showToast({
  86. icon: 'success',
  87. duration: 2000,
  88. title: '修改成功,即将跳转登录页'
  89. });
  90. setTimeout(()=>{
  91. this.logout()
  92. },2000)
  93. })
  94. })
  95. },
  96. logout(){
  97. this.$api.login.logout().then(res=>{
  98. uni.clearStorageSync();
  99. uni.navigateTo({
  100. url:'/pages/login/login'
  101. })
  102. })
  103. }
  104. }
  105. }
  106. </script>
  107. <style>
  108. @import './index.rpx.css';
  109. </style>