| | |
| | | <template> |
| | | <el-drawer |
| | | v-model="drawer_" |
| | | title="新增用户" |
| | | direction="rtl" |
| | | :model-value="modelValue" |
| | | @open="updateDrawer(true)" |
| | | @close="updateDrawer(false)" |
| | | :before-close="onDrawerClose" |
| | | > |
| | | <CompUserInfo |
| | | :create="true" |
| | | :active="drawer" |
| | | v-model:is-edit="drawerEdit" |
| | | @on-submit="onDrawerSubmit" |
| | | @on-cancel="onDrawerCancel" |
| | | :active="modelValue" |
| | | @updateEdit="(v) => (drawerEdit = v)" |
| | | @on-submit="updateDrawer(false)" |
| | | @on-cancel="updateDrawer(false)" |
| | | ></CompUserInfo> |
| | | </el-drawer> |
| | | </template> |
| | |
| | | |
| | | export default { |
| | | components: { CompUserInfo }, |
| | | props: ['drawer'], |
| | | emits: ['update:drawer'], |
| | | props: ['modelValue'], |
| | | emits: ['update:modelValue'], |
| | | data() { |
| | | return { |
| | | drawer_: this.drawer, |
| | | drawerEdit: false, |
| | | drawerEdit: false |
| | | }; |
| | | }, |
| | | watch: { |
| | | drawer(nValue) { |
| | | this.drawer_ = nValue; |
| | | }, |
| | | drawer_(nValue) { |
| | | this.$emit('update:drawer', nValue); |
| | | }, |
| | | }, |
| | | methods: { |
| | | onDrawerSubmit() { |
| | | // 关闭弹出框 |
| | | this.drawer_ = false; |
| | | updateDrawer(status) { |
| | | this.$emit('update:modelValue', status); |
| | | }, |
| | | onDrawerClose(done) { |
| | | if (this.drawerEdit) { |
| | |
| | | confirmTitle: '取消', |
| | | onConfirm: () => { |
| | | done(); |
| | | }, |
| | | } |
| | | }); |
| | | } else { |
| | | // 直接关闭 |
| | | done(); |
| | | } |
| | | }, |
| | | onDrawerCancel() { |
| | | this.onDrawerClose(() => { |
| | | this.drawer_ = false; |
| | | }); |
| | | }, |
| | | }, |
| | | } |
| | | }; |
| | | </script> |