node.js - 实时缩小 Nodejs 模板

标签 node.js webpack handlebars.js

我正在使用 Handlebars 作为模板引擎构建一个 NodeJS 应用程序。我有一个像这样的模板(template.hbs):

<html>
      <head></head>
      <body>
         {{ my_var }}
      </body>
    </html>

我想知道我是否可以在 Node 上使用缩小版本(将为用户编译并交付)时使用此文件(编写代码),如下所示(minified_template.hbs):

<html><head></head><body>{{ my_var }}</body></html>

我的意思是,我希望某个程序始终运行,监视“template.hbs”上的更改并生成“minified_template.hbs”。这样我可以节省带宽和金钱。有这样的程序可以做到吗?我听说过 Webpack,但在 google 上搜索后我仍然不确定它可以完成这种工作。 提前致谢。

最佳答案

我已经找到了问题的答案。它的名字是“Gulp”:

安装nodejs,然后在命令行运行:

npm install -g gulp
npm install --save-dev gulp-minify-html

创建一个名为“gulpfile.js”的文件:

var gulp = require('gulp');
var minifyHtml = require("gulp-minify-html");

gulp.task('minify-views', function () {
    gulp.src('./views/*.html')
    .pipe(minifyHtml())
    .pipe(gulp.dest('./views_minified'));
});


gulp.task('watch-views', function () {
    gulp.src('./views/*.html')
    .pipe(minifyHtml())
    .pipe(gulp.dest('./views_minified'));

    gulp.watch(["./views/*.html"],['minify-views']);
});

然后,从命令行运行:

gulp 观看 View

当“views”文件夹下的anny文件被修改时,它会被gulp缩小并以相同的名称保存到名为“views_minified”的文件夹中。

关于node.js - 实时缩小 Nodejs 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39539473/

相关文章:

node.js - AWS lambda 在回调命中之前退出

javascript - Angular 1.X 和 WebPack 的 ES6 类构造函数注入(inject)不起作用

javascript - 了解 ES6 模块的代码执行

node.js - 设置 Handlebars 助手以快速返回每个请求的特定值

javascript - Handlebars 模板中元素的点击功能

javascript - 直接在函数签名上绑定(bind)、调用和应用调用

javascript - 编译 Jade 模板时出现类型错误

json - 使用请求模块 POST json 文件

vue.js - 如何在vue cli中使用CDN?

ember.js - Ember : children views using checkboxes