我正在尝试使用 laravel Blade 模板,包括一些 javascript 代码到子视图中。
我有我的邮件应用程序.blade.php文件,其中放置 jquery 初始化字符串:
<script src="/js/jquery.min.js"></script>
在我的子视图文件中设置.blade.php我想使用一些 jquery 函数:
@extends('layouts.app')
@section ('content')
Settings main page
@endsection
<script type="text/javascript">
$(document).ready(function() {
alert("Settings page was loaded");
});
</script>
但在浏览器控制台中我收到一条错误消息未捕获的引用错误:$ 未定义看起来 jquery 已加载AFTER在子视图文件中调用该函数。
添加一行:<script src="/js/jquery.min.js"></script>
into 设置.blade.php解决问题。但我不想将脚本文件添加到每个子视图文件中。
所以问题:如何在父刀片文件中加载主 javascript\jquery 文件BEFORE加载子视图文件?
请按照此方式
对于 jquery 脚本文件执行此操作
<script src="{!!url('/js/jquery.min.js')!!}"></script>
并对内容部分执行此操作
@extends('layouts.app')
@section ('content')
Settings main page
<script type="text/javascript">
$(document).ready(function() {
alert("Settings page was loaded");
});
</script>
@endsection
Updated
与其在内容部分编写脚本,不如创建另一个用于编写脚本的部分,这会更好、更专业。应用程序.blade.php
通常我会这样
<html>
<head>
@yield('page-style-files')
</head>
<body>
<div class="wrapper">
@yield('content')
</div>
</body>
@yield('page-js-files')
@yield('page-js-script')
<html>
例如你的代码将如下所示
@extends('layouts.app')
@section ('content')
Settings main page
@endsection
@section('page-style-files')
<link href="....css" />
@stop
@section('page-js-files')
<script src=".....js"></script>
@stop
@section('page-js-script')
<script type="text/javascript">
$(document).ready(function() {
alert("Settings page was loaded");
});
</script>
@stop
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)