繁体   English   中英

Laravel 5中使用JavaScript的部分视图

[英]Partial views with JavaScript in Laravel 5

我有多个部分刀片文件,只需要一点点JavaScript。 理想情况下,我希望部分加载它需要的JS,而普通的JS不会包含它。 我知道你可以将它全部加载到一个大的JS文件中,但我想知道是否有办法有一个更优雅的解决方案。

我希望下面的解决方案适用于多个文件(它适用于一个,但不适用于n。由于刀片的渲染引擎,使用了第一个部分刀片遇到)。

test.page.blade.php

@extends('layouts.default')
@section('title', 'Poses')

@section('content')
    <div class="container">
        <div class="row">
            @include('test.partial.one')
            @include('test.partial.two')
        </div>
    </div>
@stop
@section('javascript')
    @include('test.partial.one')
    @include('test.partial.two')
@stop

部分test.partial.one.blade.php

@section('content')

    <h1>One</h1>

@stop

@section('javascript')

    <script>Scripts from one</script>

@stop

部分test.partial.two.blade.php

@section('content')

    <h1>Two</h1>

@stop

@section('javascript')

    <script>Scripts from two</script>

@stop

您的问题的解决方案是@parent指令,您必须在javascript部分中使用它。

test.page.blade.php

@extends('layouts.default')
@section('title', 'Poses')

@section('content')
    <div class="container">
        <div class="row">
            @include('test.partial.one')
            @include('test.partial.two')
        </div>
    </div>
@stop

@yield('javascript')

test.partial.one.blade.php

@section('content')
    <h1>One</h1>
@stop

@section('javascript')
    <script>Scripts from one</script>
    @parent
@stop

test.partial.two.blade.php

@section('content')
    <h1>Two</h1>
@stop

@section('javascript')
    <script>Scripts from two</script>
    @parent
@stop

有关进一步参考: http//laravel.com/docs/5.0/templates

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM