简体   繁体   English

如何从命令行创建 Express EJS 项目?

[英]How can I create an Express EJS project from the command line?

I have tried我努力了

express -e myproject

However this does not work as expected然而,这并没有按预期工作

express --help

  Usage: express [options] [path]

  Options:
    -s, --sessions           add session support
    -t, --template <engine>  add template <engine> support (jade|ejs). default=jade
    -c, --css <engine>       add stylesheet <engine> support (stylus). default=plain css
    -v, --version            output framework version
    -h, --help               output help information

so, do >express -t ejs [path]所以,做 >express -t ejs [path]

How to install express from the command line using express-generator and use EJS template engine如何使用express-generator从命令行安装express并使用EJS 模板引擎


1) Install express-generator globally("-g") if you don't have it already 1) 如果还没有安装 express-generator("-g")

npm install express-generator -g


2.1) Check available commands 2.1) 检查可用命令

express -h 

Result(in express version: 4.13.4):结果(快速版本:4.13.4):

  Usage: express [options] [dir]

  Options:
-h, --help          output usage information
-V, --version       output the version number
-e, --ejs           add ejs engine support (defaults to jade)
    --hbs           add handlebars engine support
-H, --hogan         add hogan.js engine support
-c, --css <engine>  add stylesheet <engine> support (less|stylus|compass|sass) (defaults to plain css)
    --git           add .gitignore
-f, --force         force on non-empty directory

2.2) Generate an Express app with chosen preferences 2.2) 生成具有所选首选项的 Express 应用程序

express --ejs --git my_app_with_ejs_and_gitignore

Result:结果:

   create : my_app_with_ejs_and_gitignore
   create : my_app_with_ejs_and_gitignore/package.json
   create : my_app_with_ejs_and_gitignore/app.js
   create : my_app_with_ejs_and_gitignore/.gitignore
   create : my_app_with_ejs_and_gitignore/public
   create : my_app_with_ejs_and_gitignore/public/javascripts
   create : my_app_with_ejs_and_gitignore/public/images
   create : my_app_with_ejs_and_gitignore/public/stylesheets
   create : my_app_with_ejs_and_gitignore/public/stylesheets/style.css
   create : my_app_with_ejs_and_gitignore/routes
   create : my_app_with_ejs_and_gitignore/routes/index.js
   create : my_app_with_ejs_and_gitignore/routes/users.js
   create : my_app_with_ejs_and_gitignore/views
   create : my_app_with_ejs_and_gitignore/views/index.ejs
   create : my_app_with_ejs_and_gitignore/views/error.ejs
   create : my_app_with_ejs_and_gitignore/bin
   create : my_app_with_ejs_and_gitignore/bin/www

   install dependencies:
     $ cd my_app_with_ejs_and_gitignore && npm install

   run the app:
     $ DEBUG=my_app_with_ejs_and_gitignore:* npm start


3) Navigate into the app directory and use NPM to install dependencies 3)导航到app目录,使用NPM安装依赖

cd my_app_with_ejs_and_gitignore
npm install


Result:结果:

+-- body-parser@1.15.2
| +-- bytes@2.4.0
| +-- content-type@1.0.2
| +-- depd@1.1.0
| +-- http-errors@1.5.0
| | +-- inherits@2.0.1
| | +-- setprototypeof@1.0.1
| | `-- statuses@1.3.0
| +-- iconv-lite@0.4.13
| +-- on-finished@2.3.0
| | `-- ee-first@1.1.1
| +-- qs@6.2.0
| +-- raw-body@2.1.7
| | `-- unpipe@1.0.0
| `-- type-is@1.6.13
|   +-- media-typer@0.3.0
|   `-- mime-types@2.1.11
|     `-- mime-db@1.23.0
+-- cookie-parser@1.4.3
| +-- cookie@0.3.1
| `-- cookie-signature@1.0.6
+-- debug@2.2.0
| `-- ms@0.7.1
+-- ejs@2.4.2
+-- express@4.13.4
| +-- accepts@1.2.13
| | `-- negotiator@0.5.3
| +-- array-flatten@1.1.1
| +-- content-disposition@0.5.1
| +-- cookie@0.1.5
| +-- escape-html@1.0.3
| +-- etag@1.7.0
| +-- finalhandler@0.4.1
| +-- fresh@0.3.0
| +-- merge-descriptors@1.0.1
| +-- methods@1.1.2
| +-- parseurl@1.3.1
| +-- path-to-regexp@0.1.7
| +-- proxy-addr@1.0.10
| | +-- forwarded@0.1.0
| | `-- ipaddr.js@1.0.5
| +-- qs@4.0.0
| +-- range-parser@1.0.3
| +-- send@0.13.1
| | +-- destroy@1.0.4
| | +-- http-errors@1.3.1
| | +-- mime@1.3.4
| | `-- statuses@1.2.1
| +-- serve-static@1.10.3
| | `-- send@0.13.2
| |   +-- http-errors@1.3.1
| |   `-- statuses@1.2.1
| +-- utils-merge@1.0.0
| `-- vary@1.0.1
+-- morgan@1.7.0
| +-- basic-auth@1.0.4
| `-- on-headers@1.0.1
`-- serve-favicon@2.3.0


4) Start the server 4)启动服务器

DEBUG=my_app_with_ejs_and_gitignore:* npm start

Result:结果:

my_app_with_ejs_and_gitignore@0.0.0 start C:\Users\Marian\OneDrive\Documente\Practice\Node\express_generator_2\my_app_with_ejs_and_gitignore
node ./bin/www
Sun, 31 Jul 2016 13:51:25 GMT my_app_with_ejs_and_gitignore:server Listening on port 3000


5) See the result in the browser 5) 在浏览器中查看结果
Open a browser and navigate to: http://localhost:3000/打开浏览器并导航到: http://localhost:3000/

The page should contain the following text:该页面应包含以下文本:
Express特快列车
Welcome to Express欢迎使用快递

npm install -g express-generator

and then接着

express -e project-name

this will create a project with ejs template engine这将使用 ejs 模板引擎创建一个项目

Just start you project with this command用这个命令开始你的项目

express --view=ejs appName

don't forget to install express-generator globally by npm install -g express-generator不要忘了通过全球范围内安装快递发电机npm install -g express-generator

  1. Install express globally npm install -g express全局安装 express npm install -g express
  2. In terminal, go to the directory in which you want your project to reside.在终端中,转到您希望项目所在的目录。 If you are in the directory that you want the files to be in, just type express .如果您位于希望文件所在的目录中,只需键入express If you want express to make a subfolder for the project, type express appname .如果要 express 为项目创建子文件夹,请键入express appname
  3. To install EJS, use npm install ejs要安装 EJS,请使用npm install ejs
  4. To configure EJS in your express project, you have to make sure you have the following line in your app.config function:要在你的 express 项目中配置 EJS,你必须确保你的 app.config 函数中有以下行:

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

EDIT: As dmh2000 pointed out, you can also just do express -t ejs编辑:正如 dmh2000 指出的,你也可以只做express -t ejs

The option to use depends on the installed version of express (check express -V !)使用的选项取决于安装的 express 版本(检查express -V !)

It was changed somewhere around version 3.0.0alpha1.它在 3.0.0alpha1 版左右发生了变化。

It used to be: express -t ejs , now it is: express -e or express --ejs以前是: express -t ejs ,现在是: express -eexpress --ejs

Proof (from express Git repo):证明(来自快速 Git 存储库):

git log -S'--ejs' # Search for the change using pickaxe
git show 29508f1 # The commit
git cat-file blob 29508f1:package.json|grep version # express version

Morale: NodeJS modules are moving targets, always check their docs, especially after updating stuff.士气:NodeJS 模块是不断变化的目标,请务必检查他们的文档,尤其是在更新内容之后。

Express provides a generator (see instructions below), however for a batteries included generator, you might choose my express-no-stress generator. Express 提供了一个发电机(请参阅下面的说明),但是对于包含电池的发电机,您可以选择我的express-no-stress发电机。

Express-no-stress表达无压力

Includes ES.next via Babel.js, structured logging with Pino, API validation and interactive documentation via Swagger, environment based config with dotenv, linting with ESLint, and Backpack powered builds.包括通过 Babel.js 的 ES.next、使用 Pino 的结构化日志记录、通过 Swagger 的 API 验证和交互式文档、使用 dotenv 的基于环境的配置、使用 ESLint 的 linting 和 Backpack 支持的构建。

Install安装

npm install -g yo generator-express-no-stress

Generate Project生成项目

yo express-no-stress myapp

Run跑步

npm run dev


Or use the Express Generator that can be used as follows:或者使用可以如下使用的Express Generator

Install安装

npm install express-generator -g

Generate Project生成项目

express myapp

Make sure you have the express generator installed:确保安装了 express 生成器:

npm install express-generator -g

then to start a project然后开始一个项目

express myproject

To display the help screen显示帮助画面

express --h

I hope it helps我希望它有帮助

Do the following steps: 1. Install ejs:执行以下步骤: 1. 安装 ejs:

sudo npm install -g ejs

2. Install node express generator: 2. 安装 node express 生成器:

sudo npm install -g express-generator

3. Reboot the system 4. Create app with express generator: 3. 重启系统 4. 使用 express 生成器创建应用程序:

express --view=ejs myApp

the one that worked for me is对我有用的是

npx express-generator --view=ejs

no need to pre-install anything (except of nodeJS of course)无需预先安装任何东西(当然 nodeJS 除外)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM