我正在制作一个简单的数学游戏,想将一系列问题传递给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上未定义问题”。我检查了如何在Pug中使用onclick,但似乎没有用。有人建议使用JSON.stringify,但似乎没有用。
谢谢!
答案 0 :(得分:1)
您可以在此处使用PUG String Interpolation,
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
});
希望这行得通! :)