先从相关的文件结构说起
pages
|---[state]
| |----[city].tsx
|---[state].tsx
我的目标是在位置 /[state]
和位置 /[state]/[city]
处动态呈现页面
当我运行构建时,/[state]
按预期生成,但是当它构建 [state]/city
时失败,因为 /[state]/
现在是动态分配的目录,如 NorthCarolina/Charlotte
或Florida/Orlando
并且抛出的错误是
Error occured prerendering page "/NorthCarolina/Charlotte"... ENOTDIR: not a directory, open 'NorthCarolina/Charlotte'
所以虽然这些错误看起来有点合理,但我正在努力弄清楚我应该如何动态生成我想要的所有这些页面。
我尝试了一个黑客解决方案,比如添加一个名为 NorthCarolina
的文件夹,看看是否能解决它,但没有成功。
发现这与我如何在 getStaticPaths
中写入文件和从 getstaticProps
中写入的文件中读取有关。仍在处理它,但问题与 next.js 功能无关。
答案 0 :(得分:0)
这是给后代的答案。
问题是,当我在 fs.writeFile
中使用 getStaticPaths
时,我正在写信给不存在的 /tmp/Florida/Tampa
。有效的是写入 /tmp/FloridaTampa
。
编码可能很痛苦。