useBreakpoint.js 520 B

1234567891011121314151617
  1. import { onMounted, onUnmounted, shallowRef } from 'vue';
  2. import useResponsiveObserve from '../../_util/responsiveObserve';
  3. function useBreakpoint() {
  4. const screens = shallowRef({});
  5. let token = null;
  6. const responsiveObserve = useResponsiveObserve();
  7. onMounted(() => {
  8. token = responsiveObserve.value.subscribe(supportScreens => {
  9. screens.value = supportScreens;
  10. });
  11. });
  12. onUnmounted(() => {
  13. responsiveObserve.value.unsubscribe(token);
  14. });
  15. return screens;
  16. }
  17. export default useBreakpoint;