链接不适用于 Next.js 和 Github 页面

Links don't work with Next.js and Github Pages

我最近学习了一个关于使用 React 和 Next.js 构建单页作品集的教程,并且在本地开发中一切正常 运行。

但是,当我将其部署到 Github 页面时,内部链接停止工作。

    <PrefixedLink href="#about">
      <NavLink>About Me</NavLink>
    </PrefixedLink>

我尝试了以下在线提供的建议: 添加一个 next.config.js(这确实修复了从 public 文件夹加载图像)——我的看起来像这样:

const pathPrefix = process.env.NODE_ENV === 'production'
? '/React-Portfolio'
: '';

module.exports = {
    assetPrefix: pathPrefix,
    basepatch: "/React-Portfolio",
    env: {
        pathPrefix,
    },
};

还有建议为所有链接添加前缀,因为 github 页面在路径中有项目名称,所以我有这个:

import Link from 'next/link';

const PrefixedLink = ({ href, as = href, children, ...props }) => (
    <Link
        href={href}
        as={`${process.env.pathPrefix}${as}`}
        {...props}
    >
        {children}
    </Link>
);

export default PrefixedLink;

但这也行不通。

在生产现场最终结果如下:

<a class="HeaderStyles__NavLink-sc-9w0vkp-5 jlNUaI">About Me</a>

没有任何 href="#about",但如果我通过检查器手动添加它,它工作正常。

编辑 删除并将 href 添加到 NavLink(自定义标签)解决了这个问题。

去掉 并将 href 添加到 NavLink(自定义标签)解决了这个问题。