Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

182
Views
Next.js manually revalidate cache

I'm using file-based data fetching to show blog posts. I know we can revalidate the cache with revalidate: seconds property but the problem is once a post written it usually won't change. Instead of revalidating the cache with seconds, is there any way to revalidate manually? So I'd like to have a system to revalidate the cache when a file in posts folder changes.

import path from 'path'
import { promises as fs } from 'fs'

function Blog ({ posts }) {
  return (
    <ul>
      {posts.map((post, key) => (
        <li key={key}>
          <h3>{post.filename}</h3>
          <p>{post.fileContent}</p>
        </li>
      ))}
    </ul>
  )
}

export async function getStaticProps () {
  const postsDirectory = path.join(process.cwd(), 'posts')
  const filenames = await fs.readdir(postsDirectory)

  const posts = filenames.map(async (filename) => {
    const filePath = path.join(postsDirectory, filename)
    const fileContent = await fs.readFile(filePath, 'utf8')
    return { filename, fileContent }
  })

  return {
    props: {
      posts: await Promise.all(posts)
    },
    revalidate: 60
  }
}

export default Blog

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!