Ошибка ссылки не указана в приложении - PullRequest
0 голосов
/ 29 марта 2020

При попытке отправить данные в форму веб-сервер выдает мне сообщение: 1001 * Ссылочная ошибка: элемент не определен , но на основании моего кода все выглядит хорошо для меня. Есть ли что-то, что выделяется в моем коде и может вызвать это?

Я играл с Const, но я не уверен, в этом ли проблема.

Вот мой Javascript файл:

const express = require('express');
const app = express();
const bodyParser  = require('body-parser');
const mongoose = require('mongoose');
//specify where to find the schema
const Items = require('./models/item')
// connect and display the status 
mongoose.connect('mongodb://localhost:27017/items', { useNewUrlParser: true, useUnifiedTopology: 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.Items.find())
  Items.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) => {
// create a new item variable and save request’s fields 
const Items = new   items ({
  itemName: req.body.itemName,
  servings: req.body.servings
});
//send the document to the database 
Items.save()
  //in case of success
  .then(() => { console.log('Success');})
  //if error
  .catch(err => {console.log('Error:' + err);});
  });


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

1 Ответ

0 голосов
/ 29 марта 2020
app.post('/items', (req, res, next) => {

// Items already defined
const items = new Items({
  itemName: req.body.itemName,
  servings: req.body.servings
});

items.save()
  //in case of success
  .then(() => { console.log('Success');})
  //if error
  .catch(err => {console.log('Error:' + err);});
  });

Константа предметов уже объявлена, и вы пытаетесь повторно объявить ее

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...