ホームページ  >  記事  >  PHPフレームワーク  >  laravel-mixがHTMLテンプレートファイルを自動的に圧縮する方法

laravel-mixがHTMLテンプレートファイルを自動的に圧縮する方法

藏色散人
藏色散人転載
2021-03-05 13:53:162705ブラウズ

次のチュートリアルコラムでは、htmlテンプレートファイルを自動圧縮するlaravel-mixを紹介しますので、困っている友人の役に立てれば幸いです。 laravel-mix は HTML テンプレート ファイルを自動的に圧縮します

#インストールの依存関係
#

cd /var/www/html/laravel-project

npm i -D laravel-mix@^5.x laravel-mix-template-minifier watch shelljs
#圧縮処理

#ファイル webpack.mix.js を開き、次の内容を追加します:

mix.minTemplate \= require("laravel-mix-template-minifier");

mix.minTemplate("storage/framework/views/\*.php", "storage/framework/views/", {
 collapseInlineTagWhitespace: true,
 collapseWhitespace: true,
 minifyCSS: true,
 minifyJS: true,
 processConditionalComments: true,
 removeAttributeQuotes: false,
 removeComments: true,
 removeTagWhitespace: false,
 trimCustomFragments: false,
});

Compression パラメーター。html-minifier を参照してください (https://github.com/kangax/html-minifier? spm= a2c6h.14275010.0.0.70f559611yXtvP)

ファイルの変更をリッスン

プロジェクトのルート ディレクトリに新しいファイル

compress.js
を作成し、以下の内容を記述します。
let shell = require("shelljs");
let watch = require("watch");

let precessing = false;

watch.watchTree("./storage/framework/views", function(f, curr, prev) {
  if (!precessing) {
    precessing = true;
    
    shell.exec("npm run prod");
    
    setTimeout(() => {
      precessing = false;
    }, 5000);
  }
});

起動時の自動起動監視コマンド

上記の手順が完了したら、##node compress.js を実行します。コマンド ラインを使用して圧力損失を自動的に監視するテンプレート ファイルを使用すると、Web ページを開いて、