URL: https://www.progressiverobot.com/vuejs-cookie-law/

Developers in the EU are probably fairly familiar with the Cookie Law, the law requiring you to inform users if your website uses cookies and have them accept that or leave the site. Now, it's just a tiny bit of extra effort to implement something like that, but why do it yourself if someone else already has? (The classic open-source lazy escape hatch.) <3

Thanks to <^>vue-cookie-law<^>, you can have a full EU Cookie Law component attached to the top or bottom of your website's viewport in just a few lines of code. Easy-peasy!

Installation

cookie illustration for: Installation

Install <^>vue-cookie-law<^> via. Yarn or NPM.

				
					
# Yarn

$ yarn add vue-cookie-law

# NPM

$ npm install vue-cookie-law --save

				
			

Usage

The most basic usage of <^>vue-cookie-law<^> would be as follows:

				
					
&lt;template&gt;

  &lt;div class="main-wrapper"&gt;

    &lt;cookie-law theme="blood-orange--rounded"&gt;&lt;/cookie-law&gt;

  &lt;/div&gt;

&lt;/template&gt;



&lt;script&gt;

import CookieLaw from 'vue-cookie-law';



export default {

  components: {

    CookieLaw

  }

}

&lt;/script&gt;

				
			

Customization

<^>vue-cookie-law<^> has a few props you can customize, including:

  • <^>buttonText<^> – Change the text on the acceptance button.
  • <^>message<^> – The message displayed to your users when they first visit. The default is This website uses cookies to ensure you get the best experience on our website.
  • <^>theme<^> – The theme of the component. Six themes are included by default, and additional ones may be created easily with CSS as shown below.
  • <^>position<^> – <^>top<^> or <^>bottom<^>.
  • <^>transitionName<^> – The transition used to hide and show the notice. Currently supports <^>slideFromBottom, slideFromTop, and fade<^>.

Theming:

You can create custom themes for <^>vue-cookie-law<^> simply by wrapping all your classes with <^>.Cookie–themeName<^> Then just pass your theme's name with <vue-cookie-law theme="themeName"></vue-cookie-law>.

Example: (Batman-style)

				
					
.Cookie--batman {

  background: black;



  &gt; .Cookie__button {

      background: black;

      color: yellow;

  }



  &gt; .Cookie__message {

    color: yellow;

  }

}

				
			

There you go! Have fun complying!