提问者:小点点

我得到一个语法错误,我似乎找不到它[关闭]


我读了错误信息,我看了一遍代码,但要么是我学得太多太累了,要么是我瞎了眼。这可能是一个愚蠢的错误/分号,也许我会看起来很愚蠢,但我似乎看不出来。提前谢谢你!

app.js:

//jshint esversion:6

const express = require("express");
const bodyParser = require("body-parser");

var item = "";
var items = ["Buy Food", "Cook Food", "Eat Food"];
let workItems = [];

const app = express();
app.set("view engine", "ejs");
app.use(bodyParser.urlencoded({extended: true}));
app.use(express.static("public"));

app.get("/", function(req, res){

  var today = new Date();

  var options = {
    weekday: "long",
    day: "numeric",
    month: "long",
  };

  var currentDay = today.getDay();
  var day = today.toLocaleDateString("en-US", options);

  res.render("list", {listTitle: day, newListItems: items});

});

app.get("/work", function(req, res){
  res.render("list", {listTitle: "Work List", newListItems: workItems});
});

app.post("/work" function(req, res){
  let item = req.body.newItem;
  workItems.push(item);
  res.redirect("/work");
});

app.post("/", function(req, res){
  item = req.body.newItem;
  items.push(item);
  res.redirect("/");
});

app.listen(3000, function(){
  console.log("Server started on port 3000.");
});

H.终端中的错误消息:

app.post("/work" function(req, res){
         ^^^^^^^

SyntaxError: missing ) after argument list
    at wrapSafe (internal/modules/cjs/loader.js:1053:16)
    at Module._compile (internal/modules/cjs/loader.js:1101:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
    at Module.load (internal/modules/cjs/loader.js:985:32)
    at Function.Module._load (internal/modules/cjs/loader.js:878:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
    at internal/main/run_main_module.js:17:47
[nodemon] app crashed - waiting for file changes before starting...

共1个答案

匿名用户

参数之间缺少一个,请将其更改为

app.post("/work", function(req, res){
  let item = req.body.newItem;
  workItems.push(item);
  res.redirect("/work");
});