在我的app.blade.php(主模板)中,我有一个名为@yield('scripts')
的部分位于页面底部附近,如下所示:
<html>
<header>...</header>
<body>
....
<script src="{{ URL::asset('js/bootstrap.min.js')}}"></script>
<script src="{{ URL::asset('js/site.js')}}"></script>
@yield('scripts')
</body>
</html>
我有一个名为index.blade.php的视图,它引用了上面的部分,以便添加一些仅在该视图中使用的脚本,如下所示:
@section('scripts')
<script src="{{ URL::asset('js/moment.js') }}"></script>
<script src="{{ URL::asset('js/pikaday.js') }}"></script>
@endsection
但是我注意到,当我查看源代码时,声明js/moment.js
的第一个脚本的路径未正确呈现。由于一些奇怪的原因,我在以下视图中呈现如下:
<script src="{{ URL::asset('js/moment.js')); ?>">
<script src="http://localhost:8000/js/pikaday.js">
我知道脚本位于正确的位置,当我在它上面的声明中添加一个新脚本时,它似乎被渲染得很好但是第一个脚本总是被错误地渲染。当我声明如下:
@section('scripts')
<script src="{{ URL::asset('js/moment.js') }}"></script>
<script src="{{ URL::asset('js/moment.js') }}"></script>
<script src="{{ URL::asset('js/pikaday.js') }}"></script>
@endsection
我得到以下输出:
<script src="{{ URL::asset('js/moment.js')); ?>">
<script src="http://localhost:8000/js/moment.js">
<script src="http://localhost:8000/js/pikaday.js">
有谁知道这里发生了什么?