@verbatim
ディレクティブとは
Laravelの公式リファレンスは以下の通り
テンプレートの大部分でJavaScript変数を表示している場合は、HTMLを@verbatimディレクティブでラップして、各Bladeエコーステートメントの前に@記号を付ける必要がないようにできます。
@verbatim
<div class="container">
Hello, {{ name }}.
</div>
@endverbatim
どこで使うん?
bladeの構文と被る可能性のあるVue.jsとかの構文(特に{{ }}
)を使うために使う。
Vue.jsなどのjsフレームワークでは、bladeでも使う{{ }}
を、変数の表示で使う。
bladeテンプレートにVueで{{ }}
を書いたりすると、Vueが解釈する前に(HTMLの要素になる前に)これをbladeの処理で解釈しようとして、意図しない挙動やエラーが起きたりする。
ここで@verbatim
の出番。
@verbatim
で囲まれた部分はbladeテンプレートの処理が無効になるので、そのままHTMLとして出力される。
で、ブラウザに渡された後、Vue.jsが{{ }}
の部分を解釈して正しく表示する、という流れになる。
例:
@verbatim
<p v-for="message in errorMessages" class="error">
{{ message }}
</p>
@endverbatim
ついでに
こういう、ピンと来ない・見たことない言葉に出会ったら意味を調べるようにしている。
言葉の意味がわからないと一生覚えられないので。
暗記はしないけど、こんなのあったなーって頭の片隅に置いておきたい派です。
「verbatim」の意味
一語一語、逐語的に、文字どおりに
という意味らしい。へぇ〜
読み方
「ヴァーベイタム」らしい。へぇ〜