Экспресс мопс не проходит - PullRequest
0 голосов
/ 11 января 2019

Я создаю веб-сайт экспресс-портфолио, где у меня есть этот маршрутизатор в папке с именем маршрутов, расположенной в файле с именем index.js строка 31, который вообще не загружается, я получаю эту ошибку: Не удается прочитать свойство ': 0 'из неопределенного

`router.get('/project:id', (req, res) => {
    //console.log(data);

    const {projectData} = data; //const reference for json file data, pass in the projects property from the data.json

   const { id } = req.params; //this variable represents the id of the project

   res.render('project', {id, projectData})
});`

1 Ответ

0 голосов
/ 11 января 2019

Я получаю эту ошибку: Невозможно прочитать свойство ': 0' из неопределенного, для справки это мое репо

Вы получаете эту ошибку, потому что вы пытаетесь получить projectData вместо projects из data массива. Поскольку projectData не является атрибутом, оно будет undefined

Кроме того, вы можете избежать использования : в URL, чтобы упростить синтаксический анализ,

Внесение этих изменений,

index.js

router.get('/project/:id', (req, res) => {

  const { id } = req.params;
  const {projects} = data; // use `projects` instead of `projectData`

   res.render('project', {id, projects})
});

index.pug

  .cell
    a(href='/project/0')
      img.thumbnail(src='static/images/project-0-main-pic.png')
      h5 A random quote generator

  .cell
    a(href='/project/1')
      img.thumbnail(src='static/images/project-1-main-pic.png')
      h5 List Pagination and Filtering

  .cell
    a(href='/project/2')
      img.thumbnail(src='static/images/project-2-main-pic.png')
      h5 Interactive Form

  .cell
    a(href='/project/3')
      img.thumbnail(src='static/images/project-3-main-pic.png')
      h5 OOP Game Show App

  .cell
    a(href='/project/4')
      img.thumbnail(src='static/images/project-4-main-pic.png')
      h5 Public API Requests  
...