javascript编译有问题

时间:2020-03-25 02:03:55

标签: javascript node.js express

我有一个应用程序Javascript文件,该文件在VS Studio代码的控制台部分显示错误,它一直在说:app.js:解析器希望找到一个'}'来匹配'{'令牌。控制台将无法编译。

根据我的代码,您能否告诉我我需要用大括号闭合的位置?我想我可能会感到困惑。

这是我的app.js代码:

const express = require('express');
const app = express();
const bodyParser  = require('body-parser');
const mongoose = require('mongoose');
//specify where to find the schema
const Item = require('./models/item')
// connect and display the status 
mongoose.connect('mongodb://localhost:27017/items', { useNewUrlParser: true })
  .then(() => { console.log("connected"); })
  .catch(() => { console.log("error connecting"); });

// use the following code on any request that matches the specified mount path
app.use((req, res, next) => {
   console.log('This line is always called');
   res.setHeader('Access-Control-Allow-Origin', '*'); //can connect from any host
   res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, OPTIONS'); //allowable methods
   res.setHeader('Access-Control-Allow-Headers', 'Origin, Content-Type, Accept');
   next();
});
app.get('/items', (req, res, next) => {
  //call mongoose method find (MongoDB db.Students.find())
  Item.find() 
    //if data is returned, send data as a response 
    .then(data => res.status(200).json(data))
    //if error, send internal server error
    .catch(err => {
    console.log('Error: ${err}');
    res.status(500).json(err);
});


  // parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))

// parse application/json
app.use(bodyParser.json())

// serve incoming post requests to /items
app.post('/items', (req, res, next) => {
    const items = req.body;
    console.log(items.itemName + " " + items.servings);
    //sent an acknowledgment back to caller 
    res.status(201).json('Post successful');
  });


//to use this middleware in other parts of the application
module.exports=app;

1 个答案:

答案 0 :(得分:1)

您的app.get('/items'函数未关闭。尝试这个。

app.get('/items', (req, res, next) => {
  //call mongoose method find (MongoDB db.Students.find())
  Item.find()
    //if data is returned, send data as a response 
    .then(data => res.status(200).json(data))
    //if error, send internal server error
    .catch(err => {
      console.log('Error: ${err}');
      res.status(500).json(err);
    });
});

但是将来,请只使用某种类型的IDE。即使只是将代码转储到JSFiddle中,也会为您突出显示此代码。