Laravel 如何在编译的视图文件中执行javascript(使用view::render方法)

Laravel 如何在编译的视图文件中执行javascript(使用view::render方法),laravel,laravel-5,laravel-6,laravel-vue,Laravel,Laravel 5,Laravel 6,Laravel Vue,是否可以从编译视图执行javascript代码? 我需要在index.blade文件中编写一些js代码来处理一些事件。 我试了三种方法,但都不管用 控制器 $advertisements = Advertisement::get(); $view = View::make('test::admin/index',['advertisements'=> $advertisements]); $html = $view->render(); return $html; i

是否可以从编译视图执行javascript代码? 我需要在index.blade文件中编写一些js代码来处理一些事件。 我试了三种方法,但都不管用

控制器

 $advertisements = Advertisement::get();
  $view = View::make('test::admin/index',['advertisements'=> $advertisements]);
  $html = $view->render();
  return $html;
index.blade.php

@push('stackscript') // NOT WORKING
<script>
  alert();
</script>
@endpush

<script>    // NOT WORKING
  alert();
</script>

@section('footer_script')  // NOT WORKING
<script>
  alert();
</script>
@endsection
<div class="row">
  @foreach ($advertisements as $advertisement)
    <div class="col-md-9">
    <div>{{ $advertisement->title }}</div>
    <div>{{ $advertisement->body }}</div>
    <div><img src="{{asset($advertisement->image)}}"></div>
  </div>
  <div class="col-md-3">
  <form id="plugin-advertisement" method="POST"  action="{{route('plugin.delete-advertisement', $advertisement->id)}}">
    @csrf
    @method("DELETE")
      <button class="btn bnt-sm btn-outline-danger">delete</button>
    </form>
  </div>
    @endforeach
</div>
@push('stackscript')//不工作
警惕();
@端推
//不起作用
警惕();
@节('footer\u script')//不工作
警惕();
@端部
@foreach($广告作为$广告)
{{$advision->title}
{{$advision->body}
图像)}}“>
@csrf
@方法(“删除”)
删除
@endforeach
Vue组件

window.axios.get(this.url)
    .then((res) => {
    this.pluginPanel = res.data;
});

template:
<div v-if="!loading" v-html="div(pluginPanel)" />
window.axios.get(this.url)
。然后((res)=>{
this.pluginPanel=res.data;
});
模板:

您必须在加载的Vue组件中使用JavaScript,而不是在刀片文件中。请参阅下面的代码:

正如您所见,此Vue组件中有一个脚本标记。您可以在此处编写JavaScript代码,并在将此Vue组件呈现到刀片文件时使用它

<template>
        <div class="flex-center position-ref full-height">
            <div class="content">
                <div class="title m-b-md">
                    Welcome to Vue.js on Laravel
                </div>
                <div class="links">
                    <a href="https://laravel.com/docs">View Laravel Docs</a>
                    <a href="https://vuejs.org/v2/guide/">View Vue Docs</a>
                    <a href="https://laracasts.com">Watch Videos</a>
                </div>
            </div>
        </div>
    </template>
    <script>
        export default {}
    </script>
    <style scoped>
        html, body {
            background-color: #fff;
            color: #636b6f;
            font-family: 'Raleway', sans-serif;
            font-weight: 100;
            height: 100vh;
            margin: 0;
        }

        .full-height {
            height: 100vh;
        }

        .flex-center {
            align-items: center;
            display: flex;
            justify-content: center;
        }

        .position-ref {
            position: relative;
        }

        .top-right {
            position: absolute;
            right: 10px;
            top: 18px;
        }

        .content {
            text-align: center;
        }

        .title {
            font-size: 84px;
        }

        .links > a {
            color: #636b6f;
            padding: 0 25px;
            font-size: 12px;
            font-weight: 600;
            letter-spacing: .1rem;
            text-decoration: none;
            text-transform: uppercase;
        }

        .m-b-md {
            margin-bottom: 30px;
        }
    </style>
index.blade.php中

    <body>
        <div id="app">
            <welcome></welcome>
        </div>
        <script type="text/javascript" src="js/app.js"></script>
    </body>

    <body>
        <div id="app">
            <welcome></welcome>
        </div>
        <script type="text/javascript" src="js/app.js"></script>
    </body>