mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
This PR introduces a new experimental hook `useResourceEffect`, which is something that we're doing some very early initial tests on. This may likely not pan out and will be removed or modified if so. Please do not rely on it as it will break.
75 lines
1.5 KiB
JavaScript
75 lines
1.5 KiB
JavaScript
/**
|
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*
|
|
* @flow
|
|
*/
|
|
|
|
export {
|
|
__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,
|
|
__COMPILER_RUNTIME,
|
|
Children,
|
|
Component,
|
|
Fragment,
|
|
Profiler,
|
|
PureComponent,
|
|
StrictMode,
|
|
Suspense,
|
|
cloneElement,
|
|
createContext,
|
|
createElement,
|
|
createRef,
|
|
use,
|
|
forwardRef,
|
|
isValidElement,
|
|
lazy,
|
|
memo,
|
|
cache,
|
|
startTransition,
|
|
unstable_DebugTracingMode,
|
|
unstable_Activity,
|
|
unstable_postpone,
|
|
unstable_getCacheForType,
|
|
unstable_SuspenseList,
|
|
unstable_useCacheRefresh,
|
|
useId,
|
|
useCallback,
|
|
useContext,
|
|
useDebugValue,
|
|
useDeferredValue,
|
|
useEffect,
|
|
experimental_useEffectEvent,
|
|
experimental_useResourceEffect,
|
|
useImperativeHandle,
|
|
useInsertionEffect,
|
|
useLayoutEffect,
|
|
useMemo,
|
|
useOptimistic,
|
|
useReducer,
|
|
useRef,
|
|
useState,
|
|
useSyncExternalStore,
|
|
useTransition,
|
|
useActionState,
|
|
version,
|
|
act, // DEV-only
|
|
captureOwnerStack, // DEV-only
|
|
} from './src/ReactClient';
|
|
|
|
import {useOptimistic} from './src/ReactClient';
|
|
|
|
export function experimental_useOptimistic<S, A>(
|
|
passthrough: S,
|
|
reducer: ?(S, A) => S,
|
|
): [S, (A) => void] {
|
|
if (__DEV__) {
|
|
console.error(
|
|
'useOptimistic is now in canary. Remove the experimental_ prefix. ' +
|
|
'The prefixed alias will be removed in an upcoming release.',
|
|
);
|
|
}
|
|
return useOptimistic(passthrough, reducer);
|
|
}
|