NextJS水合错误-水合失败

w8rqjzmb  于 2023-11-18  发布在  其他
关注(0)|答案(1)|浏览(102)

我在我的项目中使用NextLink来创建链接,但是使用NextLink似乎会返回此错误Hydration failed because the initial UI does not match what was rendered on the server.
现在在检查控制台时,这是我得到的错误:Expected server HTML to contain a matching <a> in <a>.当我更改为Link时不会发生这种情况。
下面是导致错误的代码:

<Box flex={1} align="right">
      <Box ml={2} display={{ base: 'inline-block', md: 'none' }}>
        <Menu>
          <MenuButton
            as={IconButton}
            icon={<HamburgerIcon />}
            variant="outline"
            aria-label="Options"
          />
          <MenuList>
            <NextLink href="/" passHref>
              <MenuItem as={Link}> About</MenuItem>
            </NextLink>
            <NextLink href="/" passHref>
              <MenuItem as={Link}> Work</MenuItem>
            </NextLink>
          </MenuList>
        </Menu>
      </Box>
    </Box>

字符串

rjzwgtxy

rjzwgtxy1#

在渲染应用程序时,从服务器预渲染的React树与在浏览器中第一次渲染时渲染的React树(水合)之间存在差异。
https://nextjs.org/docs/messages/react-hydration-error

相关问题