zhaojinyu e984acc6d0 first commit vor 10 Monaten
..
node_modules e984acc6d0 first commit vor 10 Monaten
LICENSE e984acc6d0 first commit vor 10 Monaten
README.md e984acc6d0 first commit vor 10 Monaten
index.cjs e984acc6d0 first commit vor 10 Monaten
index.d.ts e984acc6d0 first commit vor 10 Monaten
index.iife.js e984acc6d0 first commit vor 10 Monaten
index.iife.min.js e984acc6d0 first commit vor 10 Monaten
index.mjs e984acc6d0 first commit vor 10 Monaten
metadata.cjs e984acc6d0 first commit vor 10 Monaten
metadata.d.ts e984acc6d0 first commit vor 10 Monaten
metadata.mjs e984acc6d0 first commit vor 10 Monaten
package.json e984acc6d0 first commit vor 10 Monaten

README.md

VueUse - Collection of essential Vue Composition Utilities VueUse - Collection of essential Vue Composition Utilities
Collection of essential Vue Composition Utilities

NPM version NPM Downloads Function Count
GitHub stars

🚀 Features

  • 🎪 Interactive docs & demos
  • 🕶 Seamless migration: Works for both Vue 3 and 2
  • Fully tree shakeable: Only take what you want, bundle size
  • 🦾 Type Strong: Written in TypeScript, with TS Docs
  • 🔋 SSR Friendly
  • 🌎 No bundler required: Usable via CDN
  • 🔩 Flexible: Configurable event filters and targets
  • 🔌 Optional Add-ons: Router, Firebase, RxJS, etc.

🦄 Usage

import { useLocalStorage, useMouse, usePreferredDark } from '@vueuse/core'

export default {
  setup() {
    // tracks mouse position
    const { x, y } = useMouse()

    // is user prefers dark theme
    const isDark = usePreferredDark()

    // persist state in localStorage
    const store = useLocalStorage(
      'my-storage',
      {
        name: 'Apple',
        color: 'red',
      },
    )

    return { x, y, isDark, store }
  },
}

Refer to functions list or documentations for more details.

📦 Install

🎩 From v4.0, it works for Vue 2 & 3 within a single package by the power of vue-demi!

npm i @vueuse/core

Add ons | Nuxt Module

From v6.0, VueUse requires vue >= v3.2 or @vue/composition-api >= v1.1

Demos

CDN

<script src="https://unpkg.com/@vueuse/shared"></script>
<script src="https://unpkg.com/@vueuse/core"></script>

It will be exposed to global as window.VueUse

🪴 Project Activity

Alt

🧱 Contribute

See the Contributing Guide

🌸 Thanks

This project is heavily inspired by the following awesome projects.

And thanks to all the contributors on GitHub!

👨‍🚀 Contributors

Financial Contributors on Open Collective

📄 License

MIT License © 2019-PRESENT Anthony Fu