Laravel 4 为laravel中的某些页面加载特定的js

Laravel 4 为laravel中的某些页面加载特定的js,laravel-4,Laravel 4,我正在使用Laravel4进行一个项目。是否有任何方法可以指定要为特定视图加载的js文件。现在我把所有的东西都集中在一个文件里 当我使用codeigniter加载特定的js文件时,我使用一个库来生成脚本标记并在页脚处回显它们。如下所示 $this->data['js'] = $this->js_lib->generate('jquery'); 那么在我看来, <?= $js ?> 你知道如何在laravel中做到这一点吗?只要有一个“partials”视图文

我正在使用Laravel4进行一个项目。是否有任何方法可以指定要为特定视图加载的js文件。现在我把所有的东西都集中在一个文件里

当我使用codeigniter加载特定的js文件时,我使用一个库来生成脚本标记并在页脚处回显它们。如下所示

$this->data['js'] = $this->js_lib->generate('jquery');
那么在我看来,

<?= $js ?>


你知道如何在laravel中做到这一点吗?

只要有一个“partials”视图文件夹,并在每个视图中包含你想要的任何脚本

所以在你看来,

<body>
    // Your main content here
    // Other JS files you want in all views

    @include('partials.analytics.blade.php')

    @include('partials.googlemaps')

    @include('partials.some_other_js_file')

</body>

//你的主要内容在这里
//所有视图中需要的其他JS文件
@包括('partials.analytics.blade.php')
@包括('partials.googlemaps')
@包括('partials.some\u other\u js\u file')
然后拥有/views/partials/analytics.blade.php

<script>
  // Your JS analytics script here
</script>
<head>
<meta charset="UTF-8">
<title>My Page</title>
<meta name="viewport" content="initial-scale=1.0,maximum-scale=1.0,user-scalable=no">

<!-- common styles -->
<link rel="stylesheet" href="{{ asset('assets/bootstrap.css') }}">      
<!-- page specific styles -->
    @yield('pagespecificstyles')
</head>
<footer>
<!-- common scripts -->
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>

<!-- page specific scripts -->
@yield('pagespecificscripts')
@extends('layouts.main')

@section('pagespecificstyles')

    <!-- flot charts css-->
    <link rel="stylesheet" href="{{ asset('assets/lib/owl-carousel/flot.css') }}">

@stop

@section('content')
<div class="container">
        Hello welcome to my page.
</div>
@endsection

@section('pagespecificscripts')
    <!-- flot charts scripts-->
    <script src="{{ asset('/assets/lib/flot/jquery.flot.min.js') }}"></script>
@stop

//这里是你的JS分析脚本

只需为每个“脚本”重复一遍

我知道刚才有人问过,但为了其他可能在这里绊倒的人的利益!布局中还有一个选项用于定义其他部分,例如

@yield('css') <!-- In the head -->

@yield('js') <!-- Before the </body> tag -->
@yield('css'))
@收益率('js')
那么在你看来,

@extends('some.layout')

@section('css')
    @include('js/dependencies/some/js/dependency/css.css')
@append

<!-- So in case these dependencies are used elsewhere you're not repeating your script or link tags over and over -->

@section('js')
    @include('js/dependencies/some/js/dependency/js.js') 
    @include('js/dependencies/some/js/dependency/js2.js')
@append

@section('content')

    Your actual content

@endsection
@extends('some.layout'))
@节(“css”)
@包括('js/dependency/some/js/dependency/css.css')
@附加
@节('js')
@包括('js/dependency/some/js/dependency/js.js')
@包括('js/dependency/some/js/dependency/js2.js')
@附加
@节(“内容”)
你的实际内容
@端部
主布局

main.blade.php

<script>
  // Your JS analytics script here
</script>
<head>
<meta charset="UTF-8">
<title>My Page</title>
<meta name="viewport" content="initial-scale=1.0,maximum-scale=1.0,user-scalable=no">

<!-- common styles -->
<link rel="stylesheet" href="{{ asset('assets/bootstrap.css') }}">      
<!-- page specific styles -->
    @yield('pagespecificstyles')
</head>
<footer>
<!-- common scripts -->
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>

<!-- page specific scripts -->
@yield('pagespecificscripts')
@extends('layouts.main')

@section('pagespecificstyles')

    <!-- flot charts css-->
    <link rel="stylesheet" href="{{ asset('assets/lib/owl-carousel/flot.css') }}">

@stop

@section('content')
<div class="container">
        Hello welcome to my page.
</div>
@endsection

@section('pagespecificscripts')
    <!-- flot charts scripts-->
    <script src="{{ asset('/assets/lib/flot/jquery.flot.min.js') }}"></script>
@stop

@include('includes.header'))
@产量(‘含量’)
@include('includes.footer')


header.blade.php

<script>
  // Your JS analytics script here
</script>
<head>
<meta charset="UTF-8">
<title>My Page</title>
<meta name="viewport" content="initial-scale=1.0,maximum-scale=1.0,user-scalable=no">

<!-- common styles -->
<link rel="stylesheet" href="{{ asset('assets/bootstrap.css') }}">      
<!-- page specific styles -->
    @yield('pagespecificstyles')
</head>
<footer>
<!-- common scripts -->
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>

<!-- page specific scripts -->
@yield('pagespecificscripts')
@extends('layouts.main')

@section('pagespecificstyles')

    <!-- flot charts css-->
    <link rel="stylesheet" href="{{ asset('assets/lib/owl-carousel/flot.css') }}">

@stop

@section('content')
<div class="container">
        Hello welcome to my page.
</div>
@endsection

@section('pagespecificscripts')
    <!-- flot charts scripts-->
    <script src="{{ asset('/assets/lib/flot/jquery.flot.min.js') }}"></script>
@stop

我的页面
@产量('pagespecificstyles')

footer.blade.php

<script>
  // Your JS analytics script here
</script>
<head>
<meta charset="UTF-8">
<title>My Page</title>
<meta name="viewport" content="initial-scale=1.0,maximum-scale=1.0,user-scalable=no">

<!-- common styles -->
<link rel="stylesheet" href="{{ asset('assets/bootstrap.css') }}">      
<!-- page specific styles -->
    @yield('pagespecificstyles')
</head>
<footer>
<!-- common scripts -->
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>

<!-- page specific scripts -->
@yield('pagespecificscripts')
@extends('layouts.main')

@section('pagespecificstyles')

    <!-- flot charts css-->
    <link rel="stylesheet" href="{{ asset('assets/lib/owl-carousel/flot.css') }}">

@stop

@section('content')
<div class="container">
        Hello welcome to my page.
</div>
@endsection

@section('pagespecificscripts')
    <!-- flot charts scripts-->
    <script src="{{ asset('/assets/lib/flot/jquery.flot.min.js') }}"></script>
@stop

@产量('pagespecificscripts')
mypage.blade.php

<script>
  // Your JS analytics script here
</script>
<head>
<meta charset="UTF-8">
<title>My Page</title>
<meta name="viewport" content="initial-scale=1.0,maximum-scale=1.0,user-scalable=no">

<!-- common styles -->
<link rel="stylesheet" href="{{ asset('assets/bootstrap.css') }}">      
<!-- page specific styles -->
    @yield('pagespecificstyles')
</head>
<footer>
<!-- common scripts -->
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>

<!-- page specific scripts -->
@yield('pagespecificscripts')
@extends('layouts.main')

@section('pagespecificstyles')

    <!-- flot charts css-->
    <link rel="stylesheet" href="{{ asset('assets/lib/owl-carousel/flot.css') }}">

@stop

@section('content')
<div class="container">
        Hello welcome to my page.
</div>
@endsection

@section('pagespecificscripts')
    <!-- flot charts scripts-->
    <script src="{{ asset('/assets/lib/flot/jquery.flot.min.js') }}"></script>
@stop
@extends('layouts.main'))
@节('pagespecificstyles')
@停止
@节(“内容”)
您好,欢迎来到我的页面。
@端部
@节('PageSpecificScript')
@停止

堆栈

Blade允许您推送到可以在其他视图或布局中的其他位置渲染的命名堆栈。这对于指定子视图所需的任何JavaScript库特别有用:

@push('scripts')
    <script src="/example.js"></script>
@endpush
@push('scripts')
@端推
您可以根据需要多次推入堆栈。要呈现完整的堆栈内容,请将堆栈名称传递给@stack指令:

    <!-- Component Contents -->
    @stack('scripts')
</body>

@堆栈('脚本')

您可以在app.blade文件中添加以下代码

然后您可以使用第页上的jquery

@push('scripts')
///Js代码
@端推

这对laravel 4有效还是只对laravel 5有效?这将对4和5有效,但现在在5上我们有了stack,它基本上做了相同的事情,但它的具体目的是为了这类事情。另外,投票否决我的答案的人能给我建设性的反馈吗?太好了!就像一个符咒!谢谢。我喜欢这个答案。这是一个非常流畅的方式,帮助了我很多泰克兄弟。为什么这个答案没有被更多的人接受?谢谢完美的快速解决方案。最佳做法是将脚本放在结束正文标记之前:
@stack('scripts')