Skip to content

Latest commit

 

History

History
executable file
·
139 lines (103 loc) · 3.34 KB

README.md

File metadata and controls

executable file
·
139 lines (103 loc) · 3.34 KB

🍪 Nuxt Cookie

The Cookie Module for Nuxt, works perfectly on the client side and on the server side for set, get and remove cookies.

📖 Release Notes

Setup

Add @leandromatos/nuxt-cookie dependency to your project.

yarn add @leandromatos/nuxt-cookie

or

npm install @leandromatos/nuxt-cookie

Add @leandromatos/nuxt-cookie to the modules section of nuxt.config.js.

{
  modules: ['@leandromatos/nuxt-cookie']
}

Usage

After add the module on your project, you can access it through the $cookie.

Set a cookie

$cookie.set(name, value, options)

  • name (string): Cookie name.
  • value (string orobject|array|boolean): Cookie value.
  • options (object): Same options as the cookie.serialize method of the cookie module.

Usage on server-side:

// Nuxt middleware
export default ({ app: { $cookie } }) => {
  $cookie.set('cookie-name', 'server-cookie-value', {
    path: '/',
  })
})

Usage on client-side:

// Vue component
export default {
  mounted() {
    this.$cookie.set('cookie-name', 'client-cookie-value', {
    path: '/',
  })
  }
}

Get a cookie

get(name)

  • name (string): Cookie name.
// Nuxt middleware
export default ({ app: { $cookie } }) => {
  const cookie = $cookies.get('cookie-name')
}
// Vue component
export default {
  mounted() {
    const cookie = this.$cookie.get('cookie-name')
  }
}

Remove a cookie

remove(name, options)

  • name (string): Cookie name.
  • options (object): Same options as the cookie.serialize method of the cookie module
// Nuxt middleware
export default ({ app: { $cookie } }) => {
  const cookie = $cookies.remove('cookie-name')
}
// Vue component
export default {
  mounted() {
    const cookie = this.$cookie.remove('cookie-name')
  }
}

Development

  • Clone this repository
  • Install dependencies using yarn install or npm install
  • Start development server using yarn run dev or npm run dev

License

MIT License

Copyright (c) Leandro Matos [email protected]