Nodejs 使用express 3.4.8但不想用jade,想用ejs,现在的版本如何配置默认是ejs啊??

Nodejs 使用express 3.4.8但不想用jade,想用ejs,现在的版本如何配置默认是ejs啊??

我使用的是express 3.4.8但是我不想用jade,我用ejs,可是现在的版本如何来配置ejs啊??

app.set(‘view engine’, ‘ejs’);我已经设置成ejs

而且我已经安装了ejs了

就是找不到ejs模块

6 回复

当然可以!根据你的需求,你需要将Express应用从默认的Jade模板引擎切换到EJS。以下是详细的步骤和示例代码,帮助你完成这个配置。

步骤1:安装EJS

首先,确保你已经安装了EJS模块。如果没有安装,可以通过npm来安装:

npm install ejs --save

步骤2:配置Express应用使用EJS

接下来,在你的Express应用中进行配置。你可以通过设置view engine属性来指定使用EJS作为默认模板引擎。

以下是一个简单的示例代码:

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

// 设置视图引擎为 EJS
app.set('views', './views'); // 指定视图文件所在的目录
app.set('view engine', 'ejs'); // 设置默认模板引擎为 EJS

// 示例路由
app.get('/', function (req, res) {
    res.render('index', { title: 'Hello from EJS' });
});

// 启动服务器
var port = process.env.PORT || 3000;
app.listen(port, function () {
    console.log('App is running on http://localhost:' + port);
});

解释

  1. 安装EJS:

    • 使用npm install ejs --save命令安装EJS模块,并将其添加到项目的依赖列表中。
  2. 配置视图引擎:

    • app.set('views', './views'): 这行代码指定了视图文件所在的目录。默认情况下,Express会在名为views的目录中查找视图文件。
    • app.set('view engine', 'ejs'): 这行代码设置了默认的模板引擎为EJS。
  3. 渲染视图:

    • 在示例路由中,res.render('index', { title: 'Hello from EJS' })会渲染位于views目录下的index.ejs文件,并传递一个包含title属性的对象作为数据。
  4. 启动服务器:

    • 最后,我们监听3000端口(或环境变量PORT指定的端口),并在控制台输出一条消息,表示服务器已启动。

通过以上步骤,你应该能够成功地将Express应用从Jade切换到EJS,并且不需要修改太多的代码。希望这对你有帮助!


找不到ejs 模块…那必须是因为没安装到啊…你检查一下当前项目的目录? 还有默认的话,模板后缀得ejs…

express -e app 会在你的工程目录下面的node_mudles里面装好ejs的。 你装了ejs,可能那个不是全局安装的。

楼上正解-e是ejs 后面跟应用文件夹

建立项目时是 express -e 项目名称 这样默认就是用ejs了, 如果中途的话到package.json那里修改一下,然后npm install试试。

对于使用 Express 3.4.8 并希望将模板引擎从 Jade 切换到 EJS 的情况,你需要进行以下配置。由于 Express 3.x 版本并不直接支持 EJS 作为默认视图引擎,你需要手动设置它。

配置步骤:

  1. 安装 EJS: 确保你已经全局或局部安装了 EJS 模块。可以使用 npm 安装:

    npm install ejs --save
    
  2. 修改 Express 应用配置: 在你的应用中设置 EJS 为默认的视图引擎,并指定模板文件的扩展名 .ejs

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

// 设置视图引擎为 ejs
app.set('views', './views'); // 设置视图目录
app.set('view engine', 'ejs'); // 设置默认的模板引擎为 ejs

// 示例路由
app.get('/', function (req, res) {
    res.render('index', { title: 'Hello', message: 'Hello World' });
});

// 启动服务器
app.listen(3000, function () {
    console.log('App listening on port 3000!');
});

解释:

  • app.set('views', './views'):定义视图文件存放的位置,默认是当前目录下的 views 文件夹。
  • app.set('view engine', 'ejs'):告诉 Express 使用 EJS 作为默认的视图引擎。

文件结构:

确保在 views 目录下有一个名为 index.ejs 的文件,例如:

<!-- views/index.ejs -->
<!DOCTYPE html>
<html>
<head>
    <title><%= title %></title>
</head>
<body>
    <h1><%= message %></h1>
</body>
</html>

以上配置应该能够解决你在 Express 3.4.8 中切换到 EJS 的问题。

回到顶部