lemo-crm/web/app/components/modal-dialog.js
2022-06-23 17:29:32 +08:00

35 lines
1.1 KiB
JavaScript

import BasicComponent from './basic-component';
import $ from 'jquery'
export default BasicComponent.extend({
classNames: ['modal', 'fade'],
'init-modal': true,
'close-to-parent': true,
'cancel-text': 'Cancel',
'submit-text': 'Submit',
keyboard: true,
didInsertElement() {
let me = this;
me._super(...arguments);
if (me.get('init-modal')) {
$(me.element).modal({
backdrop: me.get('backdrop'),
keyboard: me.get('keyboard')
}).on('hidden.bs.modal', ()=> {
$(me.element) && me.get('close-to-parent') &&
me.get('router').transitionTo(
me.get('parentRouteName') ||
me.get('routeName').replace(/\.[^.]+$/, ''));
let onClose = me.get('on-close');
onClose && onClose();
}).on('shown.bs.modal', () => {
let onShown = me.get('on-shown');
onShown && onShown();
});
}
},
willDestroyElement() {
$(this.element).modal('hide');
}
});