好的,我已经启动并运行了我的基本 nodejs 网站。一切正常并通过 Node 服务器运行 - 使用我的 basic-node-site
它使用 ejs 作为模板引擎。
我想将这些模板作为静态网站发布。因此,所有内容都在本地生成,并将我的所有页面导出为静态 HTML 文件,我可以在我的基本托管平台上发布这些文件。无需服务器端技术。
我看过 jade,但它需要我更改模板和结构。
是否有任何工具可以将我当前的设置发布到包含所有生成的 html 文件的文件夹??
感谢您的帮助。不胜感激。
最佳答案
只要安装了 EJS npm 包就可以编译它。
var fs = require('fs'),
ejs = require("ejs");
function ejs2html(path, information) {
fs.readFile(path, 'utf8', function (err, data) {
if (err) { console.log(err); return false; }
var ejs_string = data,
template = ejs.compile(ejs_string),
html = template(information);
fs.writeFile(path + '.html', html, function(err) {
if(err) { console.log(err); return false }
return true;
});
});
}
ejs2html(__dirname+"/index.ejs")
- 路径:文件的位置,包括
__dirname
否则将不起作用 - Information:需要编译的信息,如
{users: ['bill','bob']}
(可选)
编辑
我使代码工作并测试了它,ejs 文件将被编译并写入同一目录,并在末尾附加 .html
。
关于node.js - 从 ejs 模板生成静态 HTML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30976477/