2016-09-10 9 views
0

私は自分のHTMLを小型化しようとしています。有効なドキュメントでgulp-htmlminが失敗する:回避策またはプラグインを放棄しますか?

<div> < back </div> 

:ちょうどこの有効なHTML、または<文字で任意の文書に適用するとき

gulp.task('build-html',function(){ 
    return gulp.src(appDev+'test.html') 
     .pipe(htmlmin({collapseWhitespace: true})) 
     .pipe(gulp.dest(appProd)); 
}); 

が失敗した...私を発見し、the gulp-htmlmin plugin

マイ一気のタスクを使用して開始しましたエラーは:

私は2つの解決策が考えられます:

  • すべての私のテンプレートで&lt;<を交換してください。手動で行うことは楽しいことではありませんが、それは人生です。どんなアイデアであっても、どのようにして食べることができますか?

  • このプラグインを削除して、テンプレートを解析して縮小することができます。助言がありますか?

推測私は配備のためにビルド経験が豊かな人(私は新しい人)がこれを処理する方法を知っています。

答えて

1

&lt;に変更する必要がありますか? html-minifierチームは、具体的にthey won't support bare <sと記しています。

これは、とにかく、パーサーをトリップしないようにしたり、特定のXSS攻撃から保護したりしたい場合です。詳細は

を参照してください。

良いニュースは、コーディングソルトの価値があるテキストエディタは、プロジェクト全体または少なくとも複数のファイルの検索と置換をサポートすることです。あなたのすべてのHTML <tags><の後に空白を含んでいないとすれば、 "<  "を "& lt;  "に置き換えることができます。

+1

ありがとうございました。投稿後、私は同じ結論に達しました。私は私の答えが出すものをやったので、私は見つけて入れ替えるのを怖がっていました。 – BeetleJuice

0

<&lt;に置き換えることにしました。これは、おそらく道路の悲しみを節約すると考えていたからです。 @henryに加えて、彼の答えに大きなポイントを作った。

私のIDEがすべての方法でコードを壊さずに検索と置換を行うことを信頼することはできましたが、私はチキンが大きすぎました。 OP

  • お知らせパースエラーを投げたファイルから

    1. 実行一気のタスクをして
    2. 実行一気タスクは再び
    3. 新しいファイルがパースエラーをスローし、それを修正するに行く:代わりに、私はこれらの手順に従っ。
    4. それを修正へ...

    最終的に私はすべてのファイルを修正しました。

  • +0

    申し訳ありませんよりも安全です!私は他人が自分のお気に入りを持っていると確信していますが、マルチファイル検索/置換のための私のお気に入りのUIはBBEdit(有料)/ TextWrangler(無料)です(私はBare Bonesと提携していません) – henry

    関連する問題