#起きたこと
composer update
をしたらUnderscore.jsのテンプレート機能で表示しているhtmlに意図しない文字列が表示されるようになった。
ブラウザに表示されたhtmlのコードを確認したところ、<script>
内の終了タグで使われている/
がエスケープされていた。
inedex.php
<script type="text/template" id="template">
<div data-id="<%= id %>">
<%= name %>
<\/div> //タグとして認識されずにそのまま画面に表示される
</script>
#原因
wyrihaximus/minify-html
ライブラリがrequireしているwyrihaximus/html-compress
の2.0.1
の不具合または仕様。
#対策方法
minify-htmlのバージョンを1.4系にする。
composer.jsonに以下を記載。
composer.json
{
"require": {
"wyrihaximus/html-compress": "1.4.*",
},
composer update
して更新。
#最後に
同じ環境の方はほとんどいないと思いますが、調べても情報が出てこなかったので書き残しておきます。