export default { mixins: [mixin], components: {}, data() { return { url_submit: "~/api/user/change_password?", field: "user_id", query: {}, form: { "o_password": "", "password": '', }, confirm_password: '' } }, methods: { get_form() { var _this = this; this.$get(this.url_get_obj, null, function(res) { if (res.result && res.result.obj) { $.push(_this.form, res.result.obj); } }); }, submit_before(param){ var p = Object.assign({},param); return p; }, submit_check(param) { if (this.form.password !== this.confirm_password) { return "密码和确认密码不一致!" } return null; }, submit_after(res, status) { this.$store.commit("quit"); this.$router.push("/login"); } }, created() { this.form.username = this.user.username; this.get_form(); } }
时间: 2023-12-06 21:43:30 浏览: 134
这是一个 Vue.js 的组件定义,其中包含了一个名为 `change_password` 的组件。该组件使用了一个名为 `mixin` 的 mixin,并定义了一个包含以下属性的 data 对象:
- `url_submit`:表示提交表单时的请求路径
- `field`:表示提交表单时需要携带的字段
- `query`:表示提交表单时需要携带的查询参数
- `form`:表示表单数据对象,包含了 `o_password` 和 `password` 两个属性
- `confirm_password`:表示确认密码输入框的值
该组件还定义了以下方法:
- `get_form`:发送一个 GET 请求,获取当前用户的数据,并将其填充到表单中
- `submit_before`:在提交表单前对表单数据进行处理的方法
- `submit_check`:在提交表单前对表单数据进行校验的方法,如果校验不通过,返回错误信息
- `submit_after`:在提交表单成功后的回调函数,该函数会将用户退出,并跳转到登录页面
在 `created` 钩子函数中,该组件会为表单的 `username` 属性赋值为当前用户的用户名,并调用 `get_form` 方法来初始化表单数据。
阅读全文