@yieldと@sectionを使用して属性を設定しようとしていますが、どうすればよいですか? 使ってみた
<html @yield('mainApp')>
と
@section('mainApp','id="myid"')
しかし、id="myid"を返します。id="myid"の代わりに
デフォルトIDで管理できることはわかっていますが、この方法は好きではありません。また、カスタム属性を使用する必要がある場合はどうすればよいですか?
@yieldと@sectionを使用して属性を設定しようとしていますが、どうすればよいですか? 使ってみた
<html @yield('mainApp')>
と
@section('mainApp','id="myid"')
しかし、id="myid"を返します。id="myid"の代わりに
デフォルトIDで管理できることはわかっていますが、この方法は好きではありません。また、カスタム属性を使用する必要がある場合はどうすればよいですか?
使用している Laravel のバージョンは? Laravel 5.4 では、これに関する更新があります。
刃
@section エスケープ
Laravel 5.4 では、セクションに渡されたインライン コンテンツは自動的にエスケープされます。
@section('タイトル', $content)
エスケープされていないコンテンツをセクションに表示する場合は、従来の「長い形式」のスタイルを使用してセクションを宣言する必要があります。
@section('タイトル') {!! $content !!} @ストップ
https://laravel.com/docs/5.4/upgrade
長い短い話ですが、Laravel 5.4を使用してから、このコードを使用してみてください
@section('mainApp')
id="myid"
@stop
HtmlString
この種のものに使用できるクラスがあり、Laravel はそれをcsrf_field()
やなどに使用しmethod_field()
ます。
必要に応じてインライン化できます。
@section('mainApp', new \Illuminate\Support\HtmlString('id="myid"'))
ただし、このためのカスタムヘルパーを個人的に作成して、より簡単にアクセスできるようにします。
@section('mainApp', html_string('id="myid"'))
ヘルパーは次のようになります。
function html_string($string) {
return new \Illuminate\Support\HtmlString($string);
}
カスタム ヘルパーの作成についてサポートが必要な場合は、この回答https://stackoverflow.com/a/28290359/7844646を確認してください。
1行で教えてください。
開始セクション名は yield('Section Name') にする必要があります