Можно ли получить доступ и изменить переменную, переданную из Express в Pug? - PullRequest
0 голосов
/ 03 февраля 2019

Я делаю простую математическую игру и хотел передать множество вопросов в Pug.Если пользователь получает правильный вопрос, я хочу обновить счет и отобразить новый вопрос.Тем не менее, я не был уверен, как я мог получить доступ и обновить веб-сайт динамически через Pug ...

Передача значений в Express:

return res.render('play', { questions: questionArray, score: 0});

Файл Pug:

p#question #{questions[score].num1} #{questions[score].operation}  #{questions[score].num2} 
  p#score #{score}
  input#answer
  button.btn.btn-primary(onclick='checkAnswer(questions[score], score)') Enter

Когда я нажимаю кнопку, чтобы проверить ответ, в консоли появляется сообщение об ошибке «Вопросы не определены в HTMLButtonElement.onclick».Я проверил, как использовать onclick в Pug, но это не сработало.Некоторые люди предлагали JSON.stringify, но, похоже, он не работал.

Заранее спасибо!

1 Ответ

0 голосов
/ 03 февраля 2019

Вы можете использовать Строковую интерполяцию PUG , как здесь;

p#question #{questions[score].num1} #{questions[score].operation}  #{questions[score].num2} 
    p#score #{score}
    input#answer
    button.btn.btn-primary#check-button Enter

script(type="text/javascript").
    document.getElementById('check-button').addEventListener('click', function() {
        let score = !{score};
        let qScore = !{quesstions[score]}
        // put things in "checkAnswer" function here
    });

Надеюсь, это работает!:)

...