美文网首页
74. 视图

74. 视图

作者: 独步天堂 | 来源:发表于2017-10-21 00:42 被阅读0次

创建视图

视图包含应用程序的 HTML,并且将控制器/应用程序逻辑与演示逻辑分开。视图文件存放于 resources/views 目录下。一个简单的视图如下所示:

<!-- 此视图文件位置:resources/views/greeting.blade.php -->

<html>
    <body>
        <h1>Hello, {{ $name }}</h1>
    </body>
</html>

使用全局辅助函数 view 来返回:

Route::get('/', function () {
    return view('greeting', ['name' => 'James']);
});

view 函数中,传入的第一个参数对应着 resources/views
目录中视图文件的名称,第二个参数是可在视图文件中使用的数据数组。在示例中,我们传递 name 变量,该变量可以使用 Blade 模板语言 在视图中显示。

视图文件也可以嵌套在 resources/views 目录的子目录中。「点」符号可以用来引用嵌套视图。例如,如果你的视图存储在 resources/views/admin/profile.blade.php,则可以这样引用它:

return view('admin.profile', $data);

判断视图文件是否存在

use Illuminate\Support\Facades\View;

if (View::exists('emails.customer')) {
    //
}

向视图传递数据

使用数组将数据传递到视图:

return view('greetings', ['name' => 'Victoria']);

第二个参数的数据必须是键值对数组。在视图文件中,你可以通过对应的键获取相应的值,例如

<?php echo $key; ?>

可以使用 with 方法将单个数据片段添加到视图:

return view('greeting')->with('name', 'Victoria');

与所有视图共享数据

如果需要共享一段数据给应用程序的所有视图,你可以在服务提供器的 boot 方法中调用视图 Facade 的 share 方法。例如,可以将它们添加到 AppServiceProvider 或者为它们生成一个单独的服务提供器:

<?php

namespace App\Providers;

use Illuminate\Support\Facades\View;

class AppServiceProvider extends ServiceProvider
{
    /**
     * 引导任何应用服务。
     *
     * @return void
     */
    public function boot()
    {
        View::share('key', 'value');
    }

    /**
     * 注册服务提供器
     *
     * @return void
     */
    public function register()
    {
        //
    }
}

视图合成器

视图合成器是在渲染视图时调用的回调或者类方法。如果你每次渲染视图时都要绑定视图的数据,视图合成器可以帮你将这些逻辑整理到特定的位置。

相关文章

  • 74. 视图

    创建视图 视图包含应用程序的 HTML,并且将控制器/应用程序逻辑与演示逻辑分开。视图文件存放于 resource...

  • 74. 习惯性撒谎(张鸣)单行本《游戏玩家》

    74. 习惯性撒谎(张鸣)单行本《游戏玩家》

  • 74.

    今晚流氓兔推荐的歌曲是《Today》,梁咏琪。一直觉得梁咏琪的声音很好听,一点小清新加一点熟女的感觉。听她的歌会有...

  • 74.

    昨天晚上梦见我姐开着敞篷车带着我们一行人走山路。下了沪蓉高速就是盘山公路,她也不怕,我让她慢点,她说这车的速度就是...

  • ARTS 06

    Algorithm 74. 搜索二维矩阵Review Lambdas不是函数式编程Tip TCP的...

  • 力扣每日一题:74.搜索二维矩阵的三种解题方法

    74. 搜索二维矩阵 https://leetcode-cn.com/problems/search-a-2d-m...

  • Leetcode 74 搜索二维矩阵

    74. 搜索二维矩阵[https://leetcode-cn.com/problems/search-a-2d-m...

  • 74.加班

    共性问题 主要为收入来源单一、增长或有水分;退出表填写错误;精准贷款用途堪忧;负债存疑。 1、收入来源单一、增长或...

  • 74.光

  • 74.教学

    线上教学我认为有利也有弊 相对于我们的常态课,线上课有它的优点:1:老师们都是精心准备的课,对会专心听课的孩子掌握...

网友评论

      本文标题:74. 视图

      本文链接:https://www.haomeiwen.com/subject/xyvbuxtx.html