use-synchronized-state 1.0.16 → 1.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -3
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -168,9 +168,7 @@ function ChildComponent({ parentState }: { parentState: number }) {
|
|
|
168
168
|
}
|
|
169
169
|
```
|
|
170
170
|
|
|
171
|
-
The 'use-synchronized-state' hook
|
|
172
|
-
if the reactive value changes (for example setParentState(1) is called), both parentState and syncState will have
|
|
173
|
-
the same value from the first render (after the setParentState). There will still be two renders, but the values will be in sync from the first one.
|
|
171
|
+
The 'use-synchronized-state' hook solves the synchronization problem in an easier and more consistent manner.
|
|
174
172
|
Also, the api is easy to use and it works for any reactive value.
|
|
175
173
|
|
|
176
174
|
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var react=require("react");function useSyncState(e){var t=react.useState(e),a=t[0],t=t[1],r=react.useState(e)
|
|
1
|
+
var react=require("react");function useSyncState(e){var t=react.useState(e),a=t[0],t=t[1],r=react.useState(e);return a!==e&&(t(e),r[1](e)),r}exports.useSyncState=useSyncState;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
2
|
/**
|
|
3
3
|
* This hook creates a synchronized state while avoiding the cascading update issue.
|
|
4
4
|
* In our case, synchronized means that when there is a change in propsState,
|
|
@@ -7,4 +7,4 @@ import { Dispatch, SetStateAction } from 'react';
|
|
|
7
7
|
* @param propsState - a reactive value (e.g. state, props) with which our returned state will synchronize
|
|
8
8
|
* @return the exact same output as useState: [state, setState], where state is the synchronized state with the propsState
|
|
9
9
|
*/
|
|
10
|
-
export declare function useSyncState<T>(propsState: T): [T, Dispatch<SetStateAction<T>>];
|
|
10
|
+
export declare function useSyncState<T>(propsState: T): [T, import("react").Dispatch<import("react").SetStateAction<T>>];
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useState}from"react";function useSyncState(t){var e=useState(t),a=e[0],e=e[1],r=useState(t)
|
|
1
|
+
import{useState}from"react";function useSyncState(t){var e=useState(t),a=e[0],e=e[1],r=useState(t);return a!==t&&(e(t),r[1](t)),r}export{useSyncState};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "use-synchronized-state",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.17",
|
|
4
4
|
"description": "A React hook that creates a synchronized state with a reactive value (fixing the Cascading updates issue)",
|
|
5
5
|
"homepage": "https://github.com/rhorge/use-synchronized-state#readme",
|
|
6
6
|
"bugs": {
|