htmlの要素として出力したいか、文字として出力したいかで使い分ける
→基本的には<%= %>で、子要素の出力を一緒に使いたいときには<%- %>を使用す
そもそもEJSとは
ejsとはテンプレート機能を実現するNode.jsのパッケージです。
1,<%= >
ejsに用意されている独自機能です。
このタグは、指定した変数の値を出力するものです。
<%=変数 >
2,<%- >
ejsに用意されている独自機能です。
HTMLをエスケープ処理しないでそのまま出力する為のものです。
具体的な違い
使ってみて、この二つに大きな違いは見つけられませんでしたが、
jsからHTML形式の値を受け渡す時には注意が必要です。
data = '<p>ありがとう</p>'
例えば、jsから上記の文を受け渡すとします。
<%= data %>
<%= %>で受け渡すと、
ありがとう
このまま表示されますが、<%- data %>
<%- %>で受け渡すと、ありがとうと表示されます。HTMLの書き方を読み込んでいるのです。