From 8b2c4a38a461ff5ecc95972291bc711e2c5dec9a Mon Sep 17 00:00:00 2001
From: 简律纯 <hsiangnianian@outlook.com>
Date: Fri, 28 Apr 2023 01:47:57 +0800
Subject:

---
 .../packages/acme-utils/src/useIsomorphicLayoutEffect.tsx   | 13 +++++++++++++
 1 file changed, 13 insertions(+)
 create mode 100644 examples/with-changesets/packages/acme-utils/src/useIsomorphicLayoutEffect.tsx

(limited to 'examples/with-changesets/packages/acme-utils/src/useIsomorphicLayoutEffect.tsx')

diff --git a/examples/with-changesets/packages/acme-utils/src/useIsomorphicLayoutEffect.tsx b/examples/with-changesets/packages/acme-utils/src/useIsomorphicLayoutEffect.tsx
new file mode 100644
index 0000000..59a7899
--- /dev/null
+++ b/examples/with-changesets/packages/acme-utils/src/useIsomorphicLayoutEffect.tsx
@@ -0,0 +1,13 @@
+import * as React from "react";
+
+/**
+ * On the server, React emits a warning when calling `useLayoutEffect`.
+ * This is because neither `useLayoutEffect` nor `useEffect` run on the server.
+ * We use this safe version which suppresses the warning by replacing it with a noop on the server.
+ *
+ * See: https://reactjs.org/docs/hooks-reference.html#uselayouteffect
+ */
+const useIsomorphicLayoutEffect =
+  typeof window !== "undefined" ? React.useLayoutEffect : () => {};
+
+export { useIsomorphicLayoutEffect };
-- 
cgit v1.2.3-70-g09d2

