【问题标题】:Why is my view not loading correctly in Laravel when other pages are loading fine?当其他页面加载正常时,为什么我的视图无法在 Laravel 中正确加载?
【发布时间】:2020-10-15 07:03:32
【问题描述】:

web.php

Route::group(['middleware' => ['auth','Admin']], function () {
    ...
    Route::get('/foo/fp',['uses' => 'ProgramReportController@getFp', 'as' => 'foo.getfp']);
});

ProgramReportController.php

class ProgramReportController extends Controller
{
    ...
    public function getFp() {
        $data = Fpchart::select('*')->get()->toArray();
        $data = json_encode($data);

        return  view('foo.fp',compact('data'));
    }
}

foo\fp.php

@extends('layouts.foo')
@section('content')
<script>
    var data = {!!$data!!};
    console.log(data);
</script>
@endsection

布局\foo.blade.php

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <title>Foo</title>
    <!-- Bootstrap core CSS -->
    <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" ></script>
    <script src="https://cdn.datatables.net/1.10.20/js/jquery.dataTables.min.js"></script>

    <script src="{{asset('js/custom.js')}}"></script>
    <link href="{{asset('css/styles.css')}}" rel="stylesheet">
</head>
<body>
    @yield('content')
    <footer class="footer">
      <div class="container">
        <span class="text-muted">
            <strong style="font-size: 78%;">
                <a href="#">ABOUT</a>&nbsp;&nbsp;
                <a href="#">PRIVACY</a>&nbsp;&nbsp;
                <a href="#">TERMS</a>
                <div class="pull-right">© 2020 FOO</div>
            </strong>
        </span>
      </div>
    </footer>
</body>
</html>

我只得到一个白页,当我转到 localhost:8000/foo/fp 并且布局没有加载时。我在页面中看到的只是这个......

@extends('layouts.ched') @section('content') @endsection

我在控制台中收到此错误:

Uncaught SyntaxError: Unexpected token '!' on line 4 in fp.php

我尝试了所有清除缓存的方法

php artisan optimize
php artisan cache:clear
php artisan config:clear
php artisan route:clear
php artisan view:clear

但无济于事,什么也没发生。当我转到管理中间件下的其他页面时,页面加载正常,除了这个,所以我认为这可能是缓存问题,但我已经尝试了一切。

【问题讨论】:

  • 你有布局文件views/layouts/foo.blade.php.?
  • 是的,我的其他页面都使用相同的布局,并且对于这个 fp.php,它们工作得非常好
  • 您的 webroot 中有一个名为“foo”的文件夹吗?
  • 然后添加foo.blade.php的代码
  • 是的,正如我所说,其他页面使用相同的布局没有问题,我认为问题不在于 foo.blade.php

标签: php laravel


【解决方案1】:

您只能在.blade.php 文件中使用刀片指令:

将 fp.php 重命名为 fp.blade.php 应该可以工作

【讨论】:

  • 不错,没发现。
  • 很好,哈哈,我也没注意到我这么笨哈哈哈谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-15
  • 2014-08-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多