Skip to content

czernika/vue3-composables

Repository files navigation

List of useful Vue3 composables

Run tests

useRefState

React-like state management for Vue 3

Get [state, setState] pattern with functional updates. Perfect for those coming from React or wanting better state mutation control.

<script setup lang="ts">
const [count, setCount] = useRefState(0)
// Set value 
setCount(1)

// Functional
setCount(prev => prev + 1)

const [state, setState] = useRefState({ name: 'John', age: 42 })
setState(prev => ({
    ...prev,
    age: 43,
}))
</script>

useProvider

Type-safe dependency injection

A clean wrapper around Vue's provide/inject with full TypeScript support and better error messages.

<!-- Parent -->
<script setup>
interface User {
    name: string
}

provide<User>('user', { name: 'John' })
</script>

<!-- Any nested child -->
<script setup>
const user = useProvider<User>('user')
</script>

License

Open-source under MIT license

About

List of useful Vue3 composables

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •