web-dev-qa-db-ja.com

ジェイドなしのエクスプレスジェネレーター

エクスプレスジェネレーターを使用して、エクスプレススケルトンを生成しようとしています。したがって、これは次のようになります。

$ npm install express-generator -g

ただし、自動jadeファイルの束が追加されます。

これらのヒスイファイルを取り除く方法があり、ExpressジェネレーターでHTMLを使用するだけかどうか疑問に思いました

ありがとう!

19
Richard WU

コマンドプロンプトで次のコマンドを実行してみてください。

express --help

エクスプレスジェネレータのヘルプを提供します:

  Usage: express [options] [dir]

  Options:

    -h, --help          output usage information
        --version       output the version number
    -e, --ejs           add ejs engine support
        --hbs           add handlebars engine support
        --pug           add pug engine support
    -H, --hogan         add hogan.js engine support
        --no-view       generate without view engine
    -v, --view <engine> add view <engine> support (ejs|hbs|hjs|jade|pug|twig|vash) (defaults to jade)
    -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

⚡ ソース:https://expressjs.com/en/starter/generator.html

上記のオプションは、「ビューエンジン」のリストを提供します。

今、単にタイプしてください:

express-{選択したビューエンジン}


たとえば、express -e

[〜#〜] ejs [〜#〜] エンジンをビューハンドラとして設定し、翡翠を削除します。 EJSは、テンプレートシステムを介して値を挿入する機能が追加されたHTMLのルックアンドフィールを備えています。

12
Harsha Kasturi

ドキュメント Express-Generator を確認できます。

Express -hで確認できるように、エクスプレスジェネレーターでサポートされているビューエンジンは(ejs | hbs | hjs | jade | pug | twig | vash)ですが、デフォルトではjadeがサポートされています。

$エクスプレス-h

使用法:エクスプレス[オプション] [ディレクトリ]

オプション:

-h, --help          output usage information
    --version       output the version number
-e, --ejs           add ejs engine support
    --hbs           add handlebars engine support
    --pug           add pug engine support
-H, --hogan         add hogan.js engine support
-v, --view <engine> add view <engine> support (ejs|hbs|hjs|jade|pug|twig|vash) (defaults to jade)
-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
3
havelino

Htmlファイルをjadeファイルに直接含めることもできます

include ../../public/index.html
1

Jadeファイルを削除して、独自のテンプレートエンジンを接続するだけです。

たとえば、Handlebars.jsを使用するのが好きです。それを使うために、app.jsまたはserver.jsまたはジェネレーターがメインファイルに指定するものは何でも、次の行に置き換えます。

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

これに沿って何かを(少なくともハンドルバーをインストールして要求した後):

app.engine('handlebars', exphbs({defaultLayout: 'main'}));
app.set('view engine', 'handlebars');

そして、すべてのエンジンはあなたが望むように設定可能です。

1
gr3co

このジェネレーターはEJSテンプレートを処理するようです。 EJSは、変数を挿入する機能を備えた単なるHTMLです。まあ...テンプレートエンジンのように。しかし、EJSはHTMLのレンダリングエンジンでもあります。

ジェネレーターのapp.jsには、次の行(15)があります。

app.set('view engine', '{views}');

だから、私の推測では、インストール時にEJSエンジンを選択すれば良いと思います。指定したフォルダーにHTMLファイルを配置する限り(行14、app.js):

app.set('views', path.join(__dirname, 'views'));
1