说我有一个变量:
var n = 3
假设在运行具有以下端点的标准express.js服务器的应用程序中设置了此变量:
var express = require(‘express.js’);
var app = express()
var n = 3
app.get(‘/‘, function(req,res) {
res.sendFile(__dirname + ‘/index.html’)
app.listen(3000)
无论如何,我可以将
n
的内容注入index.html吗? 最佳答案
使用模板渲染引擎,例如handlebars。还有许多其他选择,但是把手将适合您的情况。
模板呈现引擎将获取一个模板文件和一个带有传入值的对象,并将其呈现为HTML:
使用npm将把手添加到您的项目中:
npm install hbs
在app.js中
var express = require(‘express.js’);
var app = express()
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hbs');
var n = 3
app.get(‘/‘, function(req,res) {
res.render('index', {n: n})
}
app.listen(3000)
将
index.html
移到views/index.hbs
,并使用传递的值,如下所示:<html>
<body>
<p>The value of n is {{n}}</p>
</body>
</html>