I also had the same problem. The cause of the problem in my case was that I was not redirecting when handling post request.
app.js
const express=require("express")
const bodyparser=require("body-parser")
const path=require("path")
const app=express()
app.set("view engine", "ejs")
app.set("views", path.join(__dirname, "views"))
app.use(bodyparser.urlencoded({extended:true}))
const list=[]
app.get("/", (req, res)=>{
    const day=new Date()
    const options={
        weekday:"long",
        day:"numeric",
        month:"long"
    }
    const today=day.toLocaleDateString("en-US", options)
    res.render("list.ejs", {day:today, list:list})
})
app.post("/", (req, res)=>{
    const task=req.body.newItem
    list.push(task)
    res.redirect("/")
})
app.listen(3000)
list.ejs
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1><%=day%></h1>
    <h2>To Do List</h2>
    <ul style="list-style-type: none; margin:0; padding: 0;">
        <%for(let i=0; i<list.length; i++){%>
            <li><%=list[i]%></li>
        <%}%>
    </ul>
    <form action="/" method="post">
        <input type="text" name="newItem">
        <input type="submit" value="Add">
    </form>
</body>
</html>