Nodejs express架构建立ejs模版的命令,如何直接生成jade模版

Nodejs express架构建立ejs模版的命令,如何直接生成jade模版

我用express -t ejs microblog,得到的却是: create : microblog create : microblog/package.json create : microblog/app.js create : microblog/public create : microblog/public/javascripts create : microblog/public/images create : microblog/public/stylesheets create : microblog/public/stylesheets/style.css create : microblog/routes create : microblog/routes/index.js create : microblog/routes/user.js create : microblog/views create : microblog/views/layout.jade create : microblog/views/index.jade 是express只支持jade了,还是我在express的bin下执行出了bug;记得我上个春节前还捣鼓出ejs来的。


4 回复

Nodejs express架构建立jade模版的命令

在你使用 express -t ejs 命令创建一个Express项目时,默认情况下会生成EJS模板文件。如果你想使用Jade(现在称为Pug)作为模板引擎,你需要指定 -t pug 或者 -t jade

如何生成Jade模板

你可以通过以下命令来生成一个使用Jade模板引擎的Express项目:

express -e -t pug myapp

这里的参数 -e 表示启用EJS模板引擎,而 -t pug 则指定了使用Pug模板引擎。如果你更喜欢使用Jade这个名字,可以使用 -t jade

示例代码

假设你想创建一个名为 myapp 的Express项目,并且希望使用Jade模板引擎,你可以运行以下命令:

express -e -t pug myapp

这将会生成如下的目录结构:

myapp/
├── bin/
│   └── www
├── public/
│   ├── images/
│   ├── javascripts/
│   └── stylesheets/
│       └── style.css
├── routes/
│   ├── index.js
│   └── user.js
├── views/
│   ├── layout.pug
│   └── index.pug
├── app.js
├── package.json
└── README.md

修改配置文件

在生成的项目中,app.js 文件需要做一些修改以确保它能够正确地使用Pug模板引擎。默认情况下,app.js 中已经包含了对Pug的支持:

var path = require('path');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');

// 引入视图引擎
var exphbs  = require('express-handlebars');
var exppug = require('express-pug'); // Pug引擎

var index = require('./routes/index');
var user = require('./routes/user');

var app = express();

// 设置视图引擎为Pug
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');

// 其他中间件和路由配置...

这样,当你启动应用时,Express将会使用Pug模板引擎来渲染视图。

总结

通过上述步骤,你可以成功创建一个使用Jade(Pug)模板引擎的Express项目。如果你遇到任何问题,可以检查一下是否安装了必要的依赖包,例如 express-pug 和其他中间件。


我一直用 -e

you can use

express -e -s project_name

let project support session and ejs middleware.

use express -h show help info.


签名: 交流群244728015 《Node.js 服务器框架开发实战》 http://url.cn/Pn07N3

对于你的问题,Express已经不再默认使用Jade作为模板引擎。从Express 4.x版本开始,Jade被重命名为Pug,并且不再作为默认模板引擎。如果你希望使用Jade(或Pug)作为模板引擎,你需要手动进行一些配置。

你可以通过以下命令创建一个基于EJS的项目:

express -t ejs microblog

然后,你需要手动将EJS改为Jade(Pug)。以下是具体步骤:

  1. 安装Pug模块: 在项目根目录下运行以下命令来安装Pug模块。

    npm install pug --save
    
  2. 更改app.js配置文件: 打开app.js文件,并修改模板引擎配置,如下所示:

    var express = require('express');
    var path = require('path');
    var favicon = require('serve-favicon');
    var logger = require('morgan');
    var cookieParser = require('cookie-parser');
    var bodyParser = require('body-parser');
    
    var routes = require('./routes/index');
    var users = require('./routes/users');
    
    var app = express();
    
    // view engine setup
    app.set('views', path.join(__dirname, 'views'));
    app.set('view engine', 'pug');  // 更改此处为pug
    
    // 其他中间件
    app.use(logger('dev'));
    app.use(bodyParser.json());
    app.use(bodyParser.urlencoded({ extended: false }));
    app.use(cookieParser());
    app.use(express.static(path.join(__dirname, 'public')));
    
    // 路由
    app.use('/', routes);
    app.use('/users', users);
    
    module.exports = app;
    
  3. 更新视图文件名后缀: 将所有的.ejs文件更改为.pug(或.jade),例如,将index.ejs更改为index.pug

完成上述步骤后,你的Express应用将使用Pug(Jade)作为模板引擎。这样你就能够正常地渲染Pug模板了。

回到顶部