有没有办法将ejs文件的文件扩展名保持为.html?

时间:2014-12-09 15:54:40

标签: javascript node.js express ejs embedded-javascript

我正在使用ejs模板引擎开发一个expressjs应用程序。但我想使用像home.html一样保留ejs文件的扩展名,而不是使用home.ejs。我使用visual studio进行开发和visual studio的原因不支持ejs文件。所以代码提示格式化和突出显示不起作用。

var express = require("express");
var app = express();


app.set("view engine", "ejs");//setting ejs view engine
app.set("views", "./views");

app.get("/", function (req, res) {
    res.render("home");
});

app.listen(3000, function () {
    console.log("Server is listening on port 3000");
})

3 个答案:

答案 0 :(得分:2)

我正在设法解决这个问题,我的代码类似于@homam,但是我会更完整地编写代码

geom_point(data=tile_pH,aes(x=x, y=y))+

希望对您有所帮助。谢谢。

答案 1 :(得分:0)

使用ejs npm模块的app.engine('.html', require('ejs').__express);

app.engine('.html', require('ejs').__express);
app.set('view engine', 'ejs');

答案 2 :(得分:0)

您可以使用app.engine(ext, callback)

使用顶部附近的视图引擎和视图设置设置以下内容:

app.engine('html', require('ejs').renderFile);

然后当你致电res.render时,唯一的区别是你需要指定扩展名:

app.get('/',function(req,res){
    res.render("home.html", { myString: "I'm a normal string!" });  
});

您会发现<%=myString%>的处理方式与.ejs文件中的预期相同。