vue-simple-media

1.3.3 • Public • Published

vue-simple-media

an alternative to other mediaMatch plugins with a focus on simplicity and minimal module size (less than 1kb minified)

use

install

This plugin requires Vue 2.6 or greater.

npm install vue-simple-media

Vue.use(media) will use the default breakpoints (shown below)

To specify your own media queries:

Vue.use(media, {
  mobile: 'screen and (max-width: 768px)',
  desktop: 'screen and (min-width: 768px)'
})

Note: if sourcing this plugin from a browser script tag, put breakpoints on window.breakpoints before this plugin loads

Keys used will then be available on the $media object.

$media global

  • this.$media.current - provides an array of the currently matched media
  • this.$media.KEY - provides a boolean of whether this specified media is currently matched

Example:

if (this.$media.desktop) // do stuff

v-breakpoint directive

The function provided to the directive is called whenever media changes are detected.

The callback is given the element and $media.current as its parameters.

Example:

<div v-breakpoint="mediaChangeCallback"></div>

mediaChangeCallback(element, currentMediaList) {
  if (currentMediaList.includes('desktop')) {
    element.style.color = 'red'
  }
}

/vue-simple-media/

    Package Sidebar

    Install

    npm i vue-simple-media

    Weekly Downloads

    0

    Version

    1.3.3

    License

    MIT

    Unpacked Size

    9.99 kB

    Total Files

    6

    Last publish

    Collaborators

    • pearofducks