【问题标题】:How to render view usin Laravel blade?如何使用 Laravel 刀片渲染视图?
【发布时间】:2020-10-30 16:43:10
【问题描述】:

我正在尝试使用 Laraver(8) Blade 创建简单的应用程序,我是 Blade 的初学者,我想在我的模板中渲染扩展视图,但它不起作用,也不起作用抛出任何错误,页面刷新我的视图没有显示,我做错了什么?

主要布局:

<!DOCTYPE html>
    <html>
    <head>
    @include('layout.header')
    @stack('css')
    </head>
    <body id="body">
    <div class="blackscreen"></div>
    <div class="blackscreen2"></div>
    @yield('content')
    <script src="{{url('js/developer.js')}}"></script>
    @stack('js')
    </body>
    </html> 

模板:

@extends('layout.main')
@section('content')
    <h1>hello</h1>
@endsection

路线:

Route::get('/', function () {
        return view('layout/main');
    });

    Route::get('/test2', function () {
        return view('layout/main');
    });

这是我的文件结构

【问题讨论】:

  • 从路由返回视图脚本时尝试使用点表示法。像这样:return view('layout.main');
  • 似乎,不工作:/
  • 你能给我们更多的代码示例吗?目前尚不清楚您的template.blade.php 的路径是什么。
  • 我认为您遇到的问题是您试图返回 resources/views/layout/main.blade.php,而您应该返回 resources/views/path/to/template.blade.php,如下所示:return view('path.to.template');

标签: laravel laravel-blade


【解决方案1】:

如果您将模板保存到 resources/views/template.blade.php, 你应该像这样调用视图方法:

Route::get('/', function () {
    return view('template');
});

如果您将模板保存到资源/视图中的其他文件夹中,例如资源/视图/test/template.blade.php, 你应该像这样调用视图方法:

Route::get('/', function () {
    return view('test.template');
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-20
    • 2016-02-27
    • 2016-04-04
    • 2018-10-03
    • 2023-01-22
    • 2013-02-06
    相关资源
    最近更新 更多