node内でejsをhtmlに変換する実装を行っております。
その際の実装内容で分からないことがあり質問させて頂きました。
フォルダ構成としては下記の様になっております。
routes---index.js
|
utils---template.ejs
index.js
1const gulp = require('gulp'); 2const rename = require('gulp-rename'); 3const ejs = require("gulp-ejs"); 4 5router.post('/', async function(req, res, next) { 6 gulp.task("ejs", (done) => { 7 gulp 8 .src("../utils/template.ejs") 9 .pipe(ejs({ 10 title:"埋め込み1", 11 content:"埋め込み2", 12 }, {}, {ext:'.html'})) 13 .pipe(rename({ extname: ".html" })) 14 .pipe(gulp.dest("../utils")); 15 done(); 16 }); 17 18 //上記の処理後、作成したhtmlを使用して後続の処理を行いたい 19)};
ejs
1<body> 2 <h1><%= title %></h1> 3 <p><%= content %></p> 4</body>
ver
1"gulp": "^4.0.2", 2"gulp-ejs": "^5.1.0", 3"gulp-rename": "^2.0.0",
流れとしてはpostが飛んでくる→ejsをhtmlに変換→作成したhtmlを使用し後続の処理に繋げるという感じです。
分からない点としては
・埋め込み処理が上記の記述でいいのか
・gulp.taskが実行されれば自動でhtmlファイルが作成されるのか
というところです。
記事によってはコマンドをたたいて実行みたいなのもありましたが
postからの処理になるのでコマンドをたたかないで処理をしたいです...。
分かる方がいましたらご教示お願い致します。
回答1件
あなたの回答
tips
プレビュー