Skip to content

Commit

Permalink
2 of 2: Update stores.mdx
Browse files Browse the repository at this point in the history
Some rewording suggestions. Please just reject them if you don't think they improve anything.

Regarding: "Stores were intentionally designed to manage data structures like objects and arrays but are capable of handling other data types, such as strings and numbers."
- I don't see the point here of saying what they were originally intended for unless you need to make the point to users who used an earlier version that didn't work well with data other than arrays and objects.
  • Loading branch information
klequis authored Apr 8, 2024
1 parent 0c0d27c commit ea0ce84
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions src/routes/concepts/stores.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ Within Solid, these stores can spawn a collection of reactive signals, each corr

## Creating a store

Stores were intentionally designed to manage data structures like objects and arrays but are capable of handling other data types, such as strings and numbers.
Stores can manage many types of data types, including objects, arrays, strings and numbers.

Using JavaScript's [proxy](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) mechanism, reactivity extends beyond just the top-level objects or arrays.
With stores, you can now target nested properties and elements within these structures to create a dynamic tree of reactive data.

Expand Down Expand Up @@ -251,7 +252,7 @@ setStore("users", store.users.length, {

### Range specification

With path syntax, you can specify a range of indices to update or modify to target a subset of the elements within the array for modification.
With path syntax, you can target a subset of elements to update or modify by specifying a range of indices.
You can do this using an array of values:

```jsx
Expand Down Expand Up @@ -353,7 +354,7 @@ Other collection types, such as JavaScript [Sets](https://developer.mozilla.org/
### Data integration with `reconcile`

When new information needs to be merged into an existing store `reconcile` can be useful.
`reconcile` will determine the differences between new and existing data, initiating updates only when there are _changed_ values which avoids unnecessary updates.
`reconcile` will determine the differences between new and existing data and initiate updates only when there are _changed_ values, thereby avoiding unnecessary updates.

```jsx
const { createStore, reconcile } from "solid-js/stores"
Expand Down

0 comments on commit ea0ce84

Please sign in to comment.