element-plus
Version:
A Component Library for Vue 3
26 lines (23 loc) • 719 B
JavaScript
import { ref, watch, nextTick, computed } from 'vue';
const useTransitionProps = {
transitionDuration: {
type: Number,
default: 0.3
},
transitionShow: String,
transitionHide: String
};
const useTransition = (props, indicator) => {
const transitionState = ref(indicator.value);
watch(indicator, (val) => {
nextTick(() => transitionState.value = val);
});
return {
transition: computed(() => {
return `el-transition--${transitionState.value ? props.transitionShow : props.transitionHide}`;
}),
transitionStyle: computed(() => `--el-transition-duration: ${props.transitionDuration}s`)
};
};
export { useTransition, useTransitionProps };
//# sourceMappingURL=index.mjs.map