vueup

Simple, lightweight and elegant global notification popup for Vue.js

  • vueup

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
vueup
1.3.04 years ago6 years agoMinified + gzip package size for vueup in KB

Readme

VueUp
Simple, lightweight and elegant global notification popup for Vue.js.
View the demo.
forthebadge forthebadge forthebadge

Install

npm install --save vueup

Somewhere in your app:
import Vue   from 'vue'
import VueUp from 'vueup'

Vue.use(VueUp)

Nuxt.js

To use VueUp with Nuxt.js deploy the app with the --spa or --s flag to disable server-side rendering. For more information see nuxtjs.org/guide/commands/.
Otherwise, you can do the following steps:
File plugins/vueup.js:
import Vue from 'vue'
import VueUp from 'vueup'

Vue.use(VueUp)

Then, add the file inside the plugins key of nuxt.config.js:
module.exports = {
  plugins: [
    { src: '~/plugins/vueup', ssr: false }
  ]
}

Note: The key ssr is used to disable the server-side rendering for VueUp because it's a client side library. For more information see nuxtjs.org/guide/plugins/.
I would recommend to add the VueUp element <vue-up></vue-up> under the </nuxt> element in the layouts/default.vue file.

Usage

Add the <vue-up> component to one point in your application:
<template>
  <div>
    <vue-up></vue-up>
  </div>
</template>

To trigger the notification use the $popup method:
export default {
  ...
  methods: {
    notify () {
      this.$popup({ message: 'A message' })
    }
  }
}

You can also use a promise to execute something after the VueUp notification has ended:
export default {
  ...
  methods: {
    notify () {
      this.$popup({ message: 'Your request is reviewed.' })
        .then(() => {
          // ... do something
        })
    }
  }
}

API

this.$popup(string | Object)

this.$popup('message')

// or

this.$popup({
    message         : 'message',
    color           : '#423452',
    backgroundColor : 'rgba(0, 0, 0, 0.4)',
    delay           : 4,
    fontSize        : 60
})

Attributes

|Name|type|default|description| |:--:|:--:|:--:|:---| |message|string|-|The message that will be displayed in the notification| |color|string|#ffffff|The text color of the message| |backgroundColor|string|rgba(0, 0, 0, 0.8)|The background color of the notification| |delay|float|3.5|How long (in seconds, e.q. 3.5 seconds) should the notification popup be displayed| |fontSize|int|60|The font size of the notification text|
Hint: For the color and backgroundColor fields you can apply the color property in form of the css color property.

License

Copyright (c) 2017 Christoph Biering, Licensed under the MIT license.