从ejs模板生成静态HTML文件

Bra*_*nny 3 ejs node.js express

好的,所以我已经启动并运行了我的基本nodejs网站.它全部工作并通过节点服务器运行 - 使用我的基本节点站点

它使用ejs作为模板引擎.

我想将这些模板作为静态网站发布.所以所有都在本地生成,它将我的所有页面导出到静态HTML文件,我可以在我的基本托管平台上发布.无需服务器端技术.

我看过玉,但它要求我改变模板和结构.

是否有任何工具只是将我当前的设置发布到包含所有生成的html文件的文件夹?

谢谢你的帮助.非常感谢.

MJP*_*eld 8

只要安装了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")
Run Code Online (Sandbox Code Playgroud)
  • 路径:文件的位置,包括__dirname或它不会工作
  • 信息:要编译的信息如{users: ['bill','bob']}(可选)

EJS

在NodeJS中读取文件

编辑

我使代码工作并测试它,ejs文件将被编译并写入同一目录.html并附加到结尾.