vuetify-responsive-menu v0.1.2
Vuetify responsive menu
Has it ever happened that you need some of your menus to open as a popup on mobile? If so, you must put your data one into the menu and one into the popup and do a v-if to switch and your data code weather it is in two separate files or in one file, it will be duplicates. With vuetify-responsive-menu we are going to have a menu which can be switched automatically from Menu to Dialog and your code will not be duplicated.
Note: This component is using vuetify and there are still more to be done on it but for a start it should just work perfectly.
Installation
Install the package from npm
npm install vuetify-responsive-menuUsage
You can instsall it with Vue.use like below:
//main.js or vuetifu.js
import VResponsiveMenu from 'vuetify-responsive-menu';
Vue.use(VResponsiveMenu);OR just import inside one componenet you want to use it in and add it to the components option.
//YourComponent.vue
import VResponsiveMenu from 'vuetify-responsive-menu';
export default({
components: {
VResponsiveMenu
}
})Slots
- activator: By adding your component to this style the
responsive-menuwill automatically becomes visible on clicking on thatactivatorcontrol. - default: This slot will hold the content of your menu to be shown inside a
Menuor aDialog.
Properties
You can modify the properties of the Menu and Dialog from this component just how they are with normal Menu and normal Dialog.
Note: if you want to modify the dialog properties you need to start the name of that property with dialog- and the same applies on Menu. Look at the below example.
//YourComponent.vue
//For example you want to give a fullscreen to your dialog and offset-y to your menu.
<v-responsive-menu
dialog-fullscreen
menu-offset-y></v-responsive-menu>Now here goes some other properties which are important.
- switchBreakpoint: If this is true the component will switch from menu to dialog, you can put a
$vuetify.breakpointhere as value. - returnValue: This can be anything and it support
sync. This is incase you want one specific value be returned to you by clicking on a button in dialog.
Methods
There are three accessible methods,
- Close, which basically will close the component
- Open, will open the component
- Save, will call
this.$emit('update:returnValue', this.returnValue)to update your value.
Let me know if anything is wrong so we can improve it.