【发布时间】:2016-03-06 03:22:44
【问题描述】:
我正在同步读取文件并将内容发送到变量:
// Load the fs (filesystem) module
var fs = require('fs');
// Read the contents of the file into memory.
var text = fs.readFileSync('testfile.txt').toString()
// index page
app.get('/', function(req, res) {
res.render('index', { var: text });
});
app.listen(8080);
console.log('8080 port');
然后在我的 ejs 文件 (index.ejs) 中,我插入了这样的变量:
<main>
<div class="jumbotron">
<h2><%= text %></h2>
</div>
</main>
我收到“文本”未引用的错误:
>> 14| <h2><%= text %></h2>
15| </div>
16| </main>
17| </footer>
text is not defined
如何将变量呈现给 ejs?
【问题讨论】:
-
好吧,我想通了。 :) 我从 text 变量的声明中删除了关键字 var,然后也更改了 res.render 部分: text = fs.readFileSync('testfile.txt').toString() // index page app.get('/ ', function(req, res) { res.render('index', { text }); });