wado

wado

ブログの改良 (記事をディレクトリごとに分ける)

とりあえず、コードで利用している API のドキュメントを読むことにした。

特定ディレクトリ以下のファイルを取得するためのコードは以下の記事が役に立った

const listFiles = (dir: string): string[] =>
  fs.readdirSync(dir, { withFileTypes: true }).flatMap(dirent =>
    dirent.isFile() ? [`${dir}/${dirent.name}`] : listFiles(`${dir}/${dirent.name}`)
  )

あと、少しはまった点としては id/ を含めたまま Link コンポーネントに渡した時にうまくいかなかった。(例: 2021/01-24.md)

<Link href={`/posts/${id}`}>
                <a>{title}</a>
              </Link>

なので 2021-01-24.md のように適当に変えて対応。