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