我有一个非常简单的玉页,它没有正确显示从javascript路径传递给它的所有变量。我尝试过in this answer描述的方式,但它不适用于我的情况。我只是想显示3个变量:页面标题和两个按钮文本。
到目前为止,只有标题显示正确,按钮文字根本不显示。
这是routes/index.js
/* GET home page. */
router.get('/', function(req, res, next) {
res.render(
'index',
{locals:{
title: 'Real-Time Music Collaborator',
buttonText1: 'Login',
buttonText2: 'Start Creating',
}}
);
});
这是views/layout.jade
doctype html
html.full-screen
head
title= title
link(rel='stylesheet', href='/stylesheets/style.css')
body.full-screen
block content
这是views/index.jade
extends layout
block content
div.base-background-colour.no-margin.height-20.padding-100
h1.centre-text.dark-grey-colour.no-margin= title
button
h3.centre-text.dark-grey-colour= buttonText1
button
h3.centre-text.dark-grey-colour= buttonText2
让我感到困惑的是title
变量如何正常工作,即使我将其更改为使用预先附加的=
,但无论我尝试从哪个变量显示它都不会显示。在渲染的html中,按钮文本不存在,因此它不是由类引起的样式问题。
如果有帮助,我正在运行快递版4.14.0
。
谢谢!
答案 0 :(得分:1)
不要在locals
内定义您的对象。只需通过一个像
app.get('/', function(req, res) {
res.render('index', {
var1: 'myVariable'
})
})
然后删除locals
定义,例如p #{myVariable}