passwordset.vue 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. <template>
  2. <el-dialog title="修改密码"
  3. :visible.sync="adddialog"
  4. width="700px">
  5. <!-- <div class="page"> -->
  6. <el-row>
  7. <el-col :span="20"
  8. style="text-align:center">
  9. <el-form :model="pwdform"
  10. :rules="pwdrules"
  11. ref="pwdform"
  12. label-width="200px">
  13. <el-form-item label="当前登录密码 :"
  14. prop="pass"
  15. required>
  16. <el-input type="password"
  17. v-model="pwdform.pass"
  18. auto-complete="off"></el-input>
  19. </el-form-item>
  20. <el-form-item label="新的登录密码 :"
  21. prop="newpass"
  22. required>
  23. <el-input type="password"
  24. v-model="pwdform.newpass"
  25. auto-complete="off"></el-input>
  26. </el-form-item>
  27. <el-form-item label="确认新的登录密码 :"
  28. prop="checknewPass"
  29. required>
  30. <el-input type="password"
  31. v-model="pwdform.checknewPass"
  32. auto-complete="off"></el-input>
  33. </el-form-item>
  34. <el-form-item>
  35. <el-button type="primary"
  36. @click="submitForm('pwdform')">提交</el-button>
  37. <el-button @click="resetForm('pwdform')">重置</el-button>
  38. </el-form-item>
  39. </el-form>
  40. </el-col>
  41. </el-row>
  42. </el-dialog>
  43. </template>
  44. <script>
  45. import userApi from '@/api/setting/user'
  46. export default {
  47. name: 'userchangepwd',
  48. data () {
  49. var validatePass = (rule, value, callback) => {
  50. if (value === '') {
  51. callback(new Error('请输入新密码'))
  52. } else {
  53. if (this.pwdform.checknewPass !== '') {
  54. this.$refs.pwdform.validateField('checknewPass')
  55. }
  56. callback()
  57. }
  58. }
  59. var validatePass2 = (rule, value, callback) => {
  60. if (value === '') {
  61. callback(new Error('请再次输入新密码'))
  62. } else if (value !== this.pwdform.newpass) {
  63. callback(new Error('两次输入密码不一致!'))
  64. } else {
  65. callback()
  66. }
  67. }
  68. return {
  69. pwdform: {
  70. pass: '',
  71. newpass: '',
  72. checknewPass: ''
  73. },
  74. pwdrules: {
  75. pass: [
  76. { required: true, message: '请输入当前密码', trigger: 'blur' }
  77. ],
  78. newpass: [
  79. { validator: validatePass, trigger: 'blur' }
  80. ],
  81. checknewPass: [
  82. { validator: validatePass2, trigger: 'blur' }
  83. ]
  84. },
  85. adddialog: false
  86. }
  87. },
  88. methods: {
  89. submitForm (formName) {
  90. let _this = this
  91. this.$refs[formName].validate((valid) => {
  92. if (valid) {
  93. console.log(_this.pwdform, 'wang')
  94. userApi.userchangepwd(_this.pwdform)
  95. .then(res => {
  96. // response
  97. if (res.data.code === 0) {
  98. _this.$message({
  99. type: 'success',
  100. message: res.data.message
  101. })
  102. let url = '/login'
  103. this.$router.push(url)
  104. // this.pwdform.pass = ''
  105. // this.pwdform.newpass = ''
  106. // this.pwdform.checknewPass = ''
  107. } else {
  108. _this.$message({
  109. type: 'warning',
  110. message: res.data.message
  111. })
  112. }
  113. })
  114. .catch(() => { })
  115. }
  116. })
  117. },
  118. resetForm (formName) {
  119. this.$refs[formName].resetFields()
  120. }
  121. }
  122. }
  123. </script>
  124. <style>
  125. .page {
  126. margin: 50px;
  127. padding: 20px 40px;
  128. background-color: #fff;
  129. box-shadow: 0 2px 6px rgba(100, 100, 100, 0.3);
  130. }
  131. </style>