song-ui-u
Version:
vue3 + js的PC前端组件库
45 lines (41 loc) • 1.26 kB
JavaScript
;
var vue = require('vue');
var useModalEvent = require('./use-modal-event.cjs');
var useModalState = require('./use-modal-state.cjs');
var index = require('../../../../hook/use-style/index.cjs');
require('../../../../hook/use-zindex/index.cjs');
function useModal({ props, visible }) {
const uStyle = index.useStyle();
const rendered = vue.ref(false);
const { emit } = vue.getCurrentInstance();
const { isLoading } = useModalState.useModalState({ props });
const { useBeforeCancel, useBeforeChange, useClose } = useModalEvent.useModalEvent({ props, visible, isLoading });
const useBeforeEnter = () => {
rendered.value = true;
};
const useEnter = () => emit("open");
const useAfterEnter = () => emit("opened");
const useBeforeLeave = () => emit("close");
const useAfterLeave = () => {
props.unmountOnClose && (rendered.value = false);
emit("closed");
};
const width = vue.computed(() => {
return uStyle.width(props.width);
});
return {
useBeforeCancel,
useBeforeChange,
useClose,
useEnter,
useBeforeEnter,
useAfterEnter,
useBeforeLeave,
useAfterLeave,
isLoading,
rendered,
width
};
}
exports.useModal = useModal;
//# sourceMappingURL=use-modal.cjs.map