这是使用node.js和jade打开文件并读取每一行的方法吗
Is this the way to open a file using node.js and jade and read each line?
我对Node.js还很陌生,试图打开一个文件并读取每一行?
下面是代码,我们可以用ruby(html.erb)编写
<% File.open("/home/ubuntu/test.text", "r").each_line do |line| %>
<p><%= line %></p>
<% end %>
任何帮助都将不胜感激。
您可以读取一个文件并将其传递给Jade。如果要在Jade渲染器中读取文件,则读取必须是同步的,从而在读取完成之前阻止所有传入请求。因此,您应该异步读取文件:
app.get('/', function(req, res) {
fs.readFile(file, function(err, data) {
res.render('file.jade', {
lines: data.split(''n')
});
});
});
然后在Jade中,您可以循环行阵列:
- for (var i = 0; i < lines.length; ++i) {
li= lines[i]
- }
还有不同的循环方式:
each line in lines
li= line
- lines.forEach(function(line) {
li= line
- })
处理程序
node.js是单线程的,因此您必须使用异步函数来避免阻塞
app.get('/', function (req, res, next) {
fs.readFile('readme.txt', 'utf8', function (err, content) {
if (err) {
return next(err);
}
res.render('view.jade', {
lines : content.split(/'r?'n/)
});
});
})
视图.翡翠
body
each s in lines
p= s
相关文章:
- 获取“;无法读取属性'[方法]'“未定义”;
- 这是使用node.js和jade打开文件并读取每一行的方法吗
- 一种读取或更改CSS动画关键帧的方法
- 什么'是使用Gulp读取、重建和替换文件中内容块的最有效方法
- 用Javascript或其他方法通过语音读取整个HTML页面(离线)
- Ajax serialize() 方法没有读取 html 表单的所有数据字段
- 在对象中调用对象方法 - 错误:无法读取未定义的属性
- 读取视频中的视频元素/属性的正确方法是什么.js
- PHP - 从 PDF 读取用户选择的文本的解决方法
- 类型错误:无法读取 nodejs 应用程序中未定义的属性“方法”
- 读取 URL 中单个变量的最简单方法是什么
- $.get() 方法 JQuery 不读取任何内容 (html)
- 可读流's的读取方法不返回null
- AngularJS-can't读取变量's在我的一个方法中更改了值,它返回旧的valud
- CSS3 Jquery Gradients-有什么方法可以读取设置的值吗
- 工厂方法没有't return-TypeError:无法读取属性'那么'的未定义
- 未调用Angularjs服务方法,TypeError:无法读取属性'
- 从方法读取AngularJS中的$Cookies
- 如何使用javascript从soap中读取方法名称
- 点击按钮后,点击如何使用javascript发出请求,并使用ajax MVC Kendo UI网格调用读取方法