说我有一个变量:

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>

10-05 21:02
查看更多