Clone of Nuxt3's useState
composable
npm install vue3-usestate
yarn add vue3-usestate
import { useState } from 'vue3-usestate'
setup() {
const counter = useState('counter', 0)
return { counter }
}
Inject state to every instance under this.$state
global property
// main.js
import VueUseState from 'vue3-usestate'
createApp(App).use(VueUseState).mount('#app')
// App.vue
computed: {
state() { return this.$state }
}
or
<template>
<div>{{ $state.counter }}</div>
</template>