Почему при выполнении итерации в шаблоне pug я получаю сообщение об ошибке «Не удается прочитать свойство« длина »не определено»? - PullRequest
0 голосов
/ 27 февраля 2020

Я создаю что-то с Node и Express, и если пользователь не вошел в систему, то на домашней странице должны отображаться ссылки регистрации и входа в систему в навигационной панели. Все выглядит так, как будто оно должно работать, и я могу отображать информацию, если не выполняю итерации. Но когда я использую итерацию, я получаю эту ошибку:

/home/michael/Desktop/budget-app/views/layout.pug:13 11| a(href='/') Simple Money Manager 12| if authLinks > 13| each val, index in authlinks 14| a(href='' + val) index 15| 16| // Content Cannot read property 'length' of undefined

Вот метод render:

res.render('home', {
   authLinks: {
      Signup: "/signup",
      Login: "/login"
   }
});

Вот код, используемый в моем файле мопса:

if authLinks
    each val, index in authlinks 
      a(href='' + val) index

Почему authLinks не определен? Я в полной растерянности. Спасибо за помощь.

1 Ответ

0 голосов
/ 27 февраля 2020

Это должно быть authLinks, а не authlinks в l oop

if authLinks
    each val, index in authLinks//here 
      a(href='' + val) index  

Редактировать: Ваши authLinks является объектом, а не массивом и не может повторяться также :

res.render('home', {
   authLinks: [{
      Signup: "/signup",
      Login: "/login"
   }]
});
...