feat: add useLocalStorageMap for reactive localStorage management wit… #4879
+182
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
…h Map interface
This pull request introduces a new
useLocalStorageMap
composable to manage reactiveMap
objects synchronized withlocalStorage
. The key changes include the implementation of the composable, documentation, a demo, and comprehensive test coverage.Implementation of
useLocalStorageMap
:useLocalStorageMap
composable inindex.ts
, which provides a reactiveMap
interface backed bylocalStorage
. It uses a custom serializer to handle the conversion betweenMap
and JSON.Documentation and Examples:
index.md
to document theuseLocalStorageMap
composable, including its usage, API, and example code snippets.demo.vue
to showcase the functionality ofuseLocalStorageMap
, including adding, deleting, and displaying key-value pairs.Testing:
index.test.ts
to ensure the correctness ofuseLocalStorageMap
under various scenarios, such as basic usage, handling empty maps, non-string keys, complex objects as values, and options likelistenToStorageChanges
.Before submitting the PR, please make sure you do the following
fixes #123
).Description
Additional context