【问题标题】:Change .ejs extension to .html using Parse.com Express.js使用 Parse.com Express.js 将 .ejs 扩展名更改为 .html
【发布时间】:2014-03-22 06:49:23
【问题描述】:

在使用 Parse.com 的 Express.js 时,如何在视图文件上使用 .html 扩展名而不是 .ejs?

我将 EJS 分隔符更改为 <??>,因为我在 PHP 中已经习惯了它们。效果很好,但我似乎无法更改视图文件的文件扩展名:

我尝试了以下方法:

var express = require('express');
var ejs = require('ejs');
var app = express();

ejs.open = '<?';
ejs.close = '?>';

app.set('view engine', 'ejs');
app.engine('.html', ejs.renderFile);
app.set('views', 'cloud/views'); app.use(express.bodyParser());

app.get('/', function(req, res) {
    res.render('Test', { message: 'Hello Express!' });
});

app.listen();

我得到一个内部服务器错误。

我也尝试过删除这条线,结果相同:

app.set('view engine', 'ejs');

【问题讨论】:

  • 我不确定谁对这个问题投了反对票,但这是个好问题。我只是没有与车把类似的东西,并将所有 .handlebars/.hbs 文件更改为 .html 让我看看我能不能得到一些适合你的东西。
  • 我为您发布了一个答案,如果它有效,请将其设为正确,如果无效请告诉我,以便我提供帮助!
  • 嗨 Jemilol,我实际上已经尝试过了,但没有成功。我已经放弃了使用 Parse.com 来托管我的 Express 项目的想法。这是一个非常奇怪,受限的环境。他们不清楚你可以用你的“服务器”做什么,不能做什么。我选择在 Digital Ocean 启动我自己的 Node/Express 服务器,这太棒了。
  • 如果您还没有,请查看sails.js 和loopback.js,它们是基于express 构建的优秀框架。

标签: node.js express parse-platform ejs


【解决方案1】:
app.set('view engine', 'html');
app.engine('html', ejs.renderFile);

所以我将 app.set 设置为 html,将 app.engine 设置为 html,它对我有用。

【讨论】:

  • 改变了主意,将其作为正确答案。然而,我从来没有在 Parse.com 上使用过,尽管这是使用 Express.js 实现此目的的正确语法。
【解决方案2】:

这种方式也可以:

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

有人知道这种方式有什么问题吗?

【讨论】:

  • 是一样的。接受的答案是假设之前指定了var ejs = require('ejs')
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-23
  • 1970-01-01
  • 1970-01-01
  • 2021-12-20
相关资源
最近更新 更多