123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- <template>
- <view class="page mine-password">
- <uni-forms ref="form" :modelValue="formData" label-position="top" label-width="100%" >
- <uni-forms-item label="原密码:" name="oldPassword">
- <uni-easyinput type="password" v-model="formData.oldPassword" />
- </uni-forms-item>
- <uni-forms-item label="新密码:" name="newPassword">
- <uni-easyinput type="password" v-model="formData.newPassword" />
- </uni-forms-item>
- <uni-forms-item label="确认密码:" name="confirmPassword">
- <uni-easyinput type="password" v-model="formData.confirmPassword" />
- </uni-forms-item>
- <button type="primary" @click="onSubmit()">提交</button>
- </uni-forms>
- </view>
- </template>
- <script>
- export default {
- data() {
- return {
- formData: {
- oldPassword: "",
- newPassword: "",
- confirmPassword: ""
- },
- rules: {
- oldPassword: {
- rules: [{
- required: true,
- errorMessage: '请输入原密码',
- }]
- },
- newPassword: {
- rules: [{
- required: true,
- errorMessage: '请输入新密码',
- }, {
- validateFunction: function(rule, value, data, callback) {
- if (data.confirmPassword != data.newPassword) {
- callback("两次输入的密码不一致");
- }
- if (data.newPassword == data.oldPassword) {
- callback("新密码不能和原密码一致");
- }
- return true;
- }
- }]
- },
- confirmPassword: {
- rules: [{
- required: true,
- errorMessage: '请输入确认密码',
- }, {
- validateFunction: function(rule, value, data, callback) {
- if (data.confirmPassword != data.newPassword) {
- callback("两次输入的密码不一致");
- }
-
- return true;
- }
- }]
- }
- }
- }
- },
- methods: {
- onSubmit() {
- this.$refs.form.validate().then(res => {
- this.$http({
- url: "/modifyPwd",
- method: "PUT",
- data: this.formData
- }).then((res) => {
- uni.showToast({
- title: "修改密码成功",
- icon: 'none'
- })
- setTimeout(()=>{
- uni.navigateBack();
- },1000);
- })
- }).catch(err => {
- console.log('表单错误信息:', err);
- })
- }
- },
- onReady() {
- // 需要在onReady中设置规则
- this.$refs.form.setRules(this.rules)
- }
- }
- </script>
- <style scoped lang="scss">
- .mine-password {
- padding: 20rpx;
- }
- </style>
|