reactjs - Gatsby V3 在 deletePage 后不在 onCreatePage 函数中创建页面
问题描述
最近我将我的项目从 gatsby V2 迁移到 V3,迁移后,一些代码无法正常工作。
我正在使用并且现在需要实现的场景:
- 我的文件夹下有不同的子
/pages
文件夹,每个子文件夹都有index.js
文件并命名为大写 - 在函数
gatsby-node.js
中的文件中,onCreatePage
我删除了带有deletePage
函数的页面,并创建了一个带有不同createPage
功能的新页面。
我的gatsby-node.js
代码:
export const onCreatePage = ({ page, actions }) => {
const { deletePage, createPage } = actions;
const page_path = toLower(page.path);
deletePage(page);
if (page.componentPath === `${__dirname}/src/pages/HomePage/index.js`) {
// create a new page but with '/' as path
createPage({ ...page, path: '/' });
} else if (page_path.match(/^\/account/)) {
page.matchPath = '/account/*';
// Create the new page.
createPage({ ...page, path: page_path });
} else if (
page_path.match(/^\/kitchensink/) &&
process.env.NODE_ENV === `production`
) {
//pass
} else {
// create a new page but make slug all lowercase as page subfolders are named uppercase
createPage({ ...page, path: page_path });
}
};
迁移后,此方法删除页面但不创建新页面,似乎createPage
功能不再起作用或出现问题。结果,我没有得到任何页面,因为它被删除了,它也没有出现在public
文件夹结构中。
也许我没有发现我的错误,尝试了许多不同的方法来解决问题但没有奏效。
有什么方法可以强制 gatsby URL 为小写?
谢谢你的帮助
解决方案
问题在这里解决了
推荐阅读
- excel - 如何在excel中随时间进行条件格式化?
- python-2.7 - 如何使用 Python 2 检索 Outlook 任务
- python - 绝对导入错误
- microsoft-cognitive - Google Cloud Vision 是否包含(可能)后 OCR 文本更正?
- javascript - 更新不同页面上的数据
- docker - Docker容器退出:分段错误,errno 139,退出状态139
- c# - Rx:什么是订阅以及订阅是如何工作的?
- pandas - pandas:如何检测没有数值的系列的索引?
- ionic3 - ionic3 模块构建失败:TypeError:无法读取未定义的属性“类型”
- angular - auth.createUser 不仅创建用户