rc-util
Advanced tools
Comparing version 5.19.2 to 5.19.3
@@ -0,1 +1,5 @@ | ||
/** | ||
* Similar to `useState` but will use props value if provided. | ||
* Note that internal use rc-util `useState` hook. | ||
*/ | ||
export default function useControlledState<T, R = T>(defaultStateValue: T | (() => T), option?: { | ||
@@ -6,2 +10,2 @@ defaultValue?: T | (() => T); | ||
postState?: (value: T) => T; | ||
}): [R, (value: T) => void]; | ||
}): [R, (value: T, ignoreDestroy?: boolean) => void]; |
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray"; | ||
import * as React from 'react'; | ||
import useState from './useState'; | ||
/** | ||
* Similar to `useState` but will use props value if provided. | ||
* Note that internal use rc-util `useState` hook. | ||
*/ | ||
export default function useControlledState(defaultStateValue, option) { | ||
@@ -10,3 +16,3 @@ var _ref = option || {}, | ||
var _React$useState = React.useState(function () { | ||
var _useState = useState(function () { | ||
if (value !== undefined) { | ||
@@ -22,5 +28,5 @@ return value; | ||
}), | ||
_React$useState2 = _slicedToArray(_React$useState, 2), | ||
innerValue = _React$useState2[0], | ||
setInnerValue = _React$useState2[1]; | ||
_useState2 = _slicedToArray(_useState, 2), | ||
innerValue = _useState2[0], | ||
setInnerValue = _useState2[1]; | ||
@@ -36,4 +42,4 @@ var mergedValue = value !== undefined ? value : innerValue; | ||
onChangeRef.current = onChange; | ||
var triggerChange = React.useCallback(function (newValue) { | ||
setInnerValue(newValue); | ||
var triggerChange = React.useCallback(function (newValue, ignoreDestroy) { | ||
setInnerValue(newValue, ignoreDestroy); | ||
@@ -40,0 +46,0 @@ if (mergedValue !== newValue && onChangeRef.current) { |
declare type Updater<T> = T | ((prevValue: T) => T); | ||
declare type SetState<T> = (nextValue: Updater<T>, | ||
export declare type SetState<T> = (nextValue: Updater<T>, | ||
/** | ||
@@ -4,0 +4,0 @@ * Will not update state when destroyed. |
@@ -0,1 +1,5 @@ | ||
/** | ||
* Similar to `useState` but will use props value if provided. | ||
* Note that internal use rc-util `useState` hook. | ||
*/ | ||
export default function useControlledState<T, R = T>(defaultStateValue: T | (() => T), option?: { | ||
@@ -6,2 +10,2 @@ defaultValue?: T | (() => T); | ||
postState?: (value: T) => T; | ||
}): [R, (value: T) => void]; | ||
}): [R, (value: T, ignoreDestroy?: boolean) => void]; |
@@ -16,2 +16,8 @@ "use strict"; | ||
var _useState3 = _interopRequireDefault(require("./useState")); | ||
/** | ||
* Similar to `useState` but will use props value if provided. | ||
* Note that internal use rc-util `useState` hook. | ||
*/ | ||
function useControlledState(defaultStateValue, option) { | ||
@@ -24,3 +30,3 @@ var _ref = option || {}, | ||
var _React$useState = React.useState(function () { | ||
var _useState = (0, _useState3.default)(function () { | ||
if (value !== undefined) { | ||
@@ -36,5 +42,5 @@ return value; | ||
}), | ||
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2), | ||
innerValue = _React$useState2[0], | ||
setInnerValue = _React$useState2[1]; | ||
_useState2 = (0, _slicedToArray2.default)(_useState, 2), | ||
innerValue = _useState2[0], | ||
setInnerValue = _useState2[1]; | ||
@@ -50,4 +56,4 @@ var mergedValue = value !== undefined ? value : innerValue; | ||
onChangeRef.current = onChange; | ||
var triggerChange = React.useCallback(function (newValue) { | ||
setInnerValue(newValue); | ||
var triggerChange = React.useCallback(function (newValue, ignoreDestroy) { | ||
setInnerValue(newValue, ignoreDestroy); | ||
@@ -54,0 +60,0 @@ if (mergedValue !== newValue && onChangeRef.current) { |
declare type Updater<T> = T | ((prevValue: T) => T); | ||
declare type SetState<T> = (nextValue: Updater<T>, | ||
export declare type SetState<T> = (nextValue: Updater<T>, | ||
/** | ||
@@ -4,0 +4,0 @@ * Will not update state when destroyed. |
{ | ||
"name": "rc-util", | ||
"version": "5.19.2", | ||
"version": "5.19.3", | ||
"description": "Common Utils For React Component", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
183402
5687