Fix side effects in router-is-ready tests (#24360)
Fixes the [failing react@experimental tests](https://github.com/vercel/next.js/actions/workflows/test_react_experimental.yml).
This commit is contained in:
parent
1e9f45931c
commit
cce82cd7bc
5 changed files with 40 additions and 20 deletions
|
@ -1,13 +1,17 @@
|
|||
import { useRouter } from 'next/router'
|
||||
import { useLayoutEffect } from 'react'
|
||||
|
||||
export default function Page(props) {
|
||||
const router = useRouter()
|
||||
|
||||
if (typeof window !== 'undefined') {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
// eslint-disable-next-line react-hooks/rules-of-hooks
|
||||
useLayoutEffect(() => {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
}, [router])
|
||||
}
|
||||
|
||||
return (
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
import { useRouter } from 'next/router'
|
||||
import { useLayoutEffect } from 'react'
|
||||
|
||||
export default function Page(props) {
|
||||
const router = useRouter()
|
||||
|
||||
if (typeof window !== 'undefined') {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
// eslint-disable-next-line react-hooks/rules-of-hooks
|
||||
useLayoutEffect(() => {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
}, [router])
|
||||
}
|
||||
|
||||
return (
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
import { useRouter } from 'next/router'
|
||||
import { useLayoutEffect } from 'react'
|
||||
|
||||
export default function Page(props) {
|
||||
const router = useRouter()
|
||||
|
||||
if (typeof window !== 'undefined') {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
// eslint-disable-next-line react-hooks/rules-of-hooks
|
||||
useLayoutEffect(() => {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
}, [router])
|
||||
}
|
||||
|
||||
return (
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
import { useRouter } from 'next/router'
|
||||
import { useLayoutEffect } from 'react'
|
||||
|
||||
export default function Page(props) {
|
||||
const router = useRouter()
|
||||
|
||||
if (typeof window !== 'undefined') {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
// eslint-disable-next-line react-hooks/rules-of-hooks
|
||||
useLayoutEffect(() => {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
}, [router])
|
||||
}
|
||||
|
||||
return (
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
import { useRouter } from 'next/router'
|
||||
import { useLayoutEffect } from 'react'
|
||||
|
||||
export default function Page(props) {
|
||||
const router = useRouter()
|
||||
|
||||
if (typeof window !== 'undefined') {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
// eslint-disable-next-line react-hooks/rules-of-hooks
|
||||
useLayoutEffect(() => {
|
||||
if (!window.isReadyValues) {
|
||||
window.isReadyValues = []
|
||||
}
|
||||
window.isReadyValues.push(router.isReady)
|
||||
}, [router])
|
||||
}
|
||||
|
||||
return (
|
||||
|
|
Loading…
Reference in a new issue