视图

作者: 顾庭燎 | 来源:发表于2019-01-21 20:52 被阅读0次

    视图

    • 到目前为止,我们已经接触了一些路由闭包,并看到了return view('account')的一些内容,对于MVC模式来说,视图或模般指的是用于描述某些特定输出应该是什么样的文件,在Web框架中最常见的视图是用html进行输出的

    • 在Laravel中,有两种视图可以使用,分别为PHP和Blade模板,两种视图的区别在于,使用PHP引擎进行处理的文件名形式一般为about.php,而用Blade引擎进行处理的文件名形式一般为about.blade.php

    • 返回视图有三种不同的方法,第一种是直接使用view()加载,第二种是用View::make()加载,第三种是用注入Illuminate\View\View Factory 的方式实现视图的加载

    • 样例

      • 不传参数

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

        此代码可以在resource/views/welcome.php中或resoure/views/welcome.blade.php中查找视图,加载其内容,以及解析任何内联PHP或控件结构,直到有视图的输出。一旦返回它,它将被传递到响应栈的其余部分,并且最终被返回给用户

      • 传参数

        Route::get('tasks', function() {
            return view('tasks.index')->with('tasks', Task::all());
        });
        

        这个闭包加载resource/views/tasks/index.php或resource/views/tasks/index.blade.php,同时会传递一个名为tasks的单个变量给视图,该变量包含Task::all()方法所返回的结果,该方法是一个优秀的数据库查询办法

    • 视图Composer

      • 多次传递同一个变量可能是繁琐的事,这就可以使用一个共享变量与每个模板进行共享

        view()->share('variableName', 'variableValue');
        

    相关文章

      网友评论

          本文标题:视图

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