PHP Vars to JavaScript Laravel 5.2

PHP Vars to JavaScript Laravel 5.2

本文关键字:Laravel JavaScript Vars to PHP      更新时间:2023-09-26

我使用这个包将变量传递给Laravel 5.2中的javascript,但我得到了:

all.js:56未捕获引用错误:未定义类别

在我的控制器中,我试图传递这样的变量:

JavaScript::put([
  'categories' => $numberOfViewsByCategory[0],
  'categoryViews' => $numberOfViewsByCategory[1],
  'chains' => $numberOfViewsByChain[0],
  'chainViews' => $numberOfViewsByChain[1]
]);

我在配置文件中设置了路径:

'bind_js_vars_to_this_view' => 'layouts.partials.foot',

我的部分。脚刃看起来像这样:

@section('foot')
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.3/jquery.min.js" integrity="sha384-I6F5OKECLVtK/BL+8iSLDEHowSAfUo76ZL9+kGAgTRdiByINKJaqTPH/QVNS1VDb" crossorigin="anonymous"></script>
  <script type="text/javascript" src="{{ asset('js/zurb/zurb.js') }}"></script>
  <script type="text/javascript" src="{{ asset('js/jquery-ui/jquery-ui.min.js') }}"></script>
  <script src="//cdn.tinymce.com/4/tinymce.min.js"></script>
  <script type="text/javascript" src="{{ asset('js/jquery-filer/jquery-filer.js') }}"></script>
  <script type="text/javascript" src="{{ asset('js/editor/editor.js') }}"></script>
  <script src="https://code.highcharts.com/highcharts.js"></script>
  <script src="https://code.highcharts.com/modules/exporting.js">  </script>
  <script src="{{ asset('js/all.js') }}"></script>
@stop

但是当我在all.js文件中执行console.log(categories)时,我会收到上面提到的错误。

文档中写道:

您希望您的新JavaScript变量预先准备在哪个视图中

所以我想,在你的layout.blade.php中,你现在有一些类似@yield('footer')的东西。

我建议编辑您的foot.blade.php,如:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.3/jquery.min.js" integrity="sha384-I6F5OKECLVtK/BL+8iSLDEHowSAfUo76ZL9+kGAgTRdiByINKJaqTPH/QVNS1VDb" crossorigin="anonymous"></script>
<script type="text/javascript" src="{{ asset('js/zurb/zurb.js') }}"></script>
<script type="text/javascript" src="{{ asset('js/jquery-ui/jquery-ui.min.js') }}"></script>
<script src="//cdn.tinymce.com/4/tinymce.min.js"></script>
<script type="text/javascript" src="{{ asset('js/jquery-filer/jquery-filer.js') }}"></script>
<script type="text/javascript" src="{{ asset('js/editor/editor.js') }}"></script>
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js">  </script>
<script src="{{ asset('js/all.js') }}"></script>

在布局中,用@include('partials.foot') 替换@yield