eRubyで<%= %> をそのまま出力する
はじめに
JavaScriptのテンプレートエンジンで
<%= %>
を使うテンプレートエンジン*1がある。
おそらくこれは、 eRuby 等を参考に作られているとおもわれる。
見てると結構便利そう。
ただ、1点問題があってRailsとかでテンプレートエンジンにeRubyを使っていて、js側でも <%= %> を使うテンプレートエンジンを使っていると eRuby 側でも <%= %> を展開しようとして衝突してしまう。
小規模な場合は <%= %>
を [%= %]
などに書き換えてもらって対処してもらえそうだが、広範囲で書かれてしまうと結構面倒。
eRuby側で <%= %> を展開しないでそのまま出力方法がないか調べてみた。
解決方法
<%= title %>
このまま表示させたい場合は
<%%= title %>
とすることでコード上で
<%= title %>
と出力される。
まとめ
eRuby―テキスト埋め込み型Ruby (スキルアップ!Webテクニック)
posted with amazlet at 13.02.14
*1:ejsとか: http://embeddedjs.com