(编辑:jimmy 日期: 2026/1/27 浏览:2)
创建视图
视图包含应用的 HTML 代码,并将应用的控制器逻辑和表现逻辑进行分离。视图文件存放在 resources/views 目录中。下面是一个简单的视图示例:
<!-- resources/views/greeting.blade.php 视图文件 -->
<html>
<body>
<h1>Hello, {{ $name }}</h1>
</body>
</html>
可以通过辅助函数 view ,返回这个视图响应:
Route::get('/', function () {
return view('greeting', ['name' => 'jack']);
});
view 方法的第一个参数是 resources/views 目录下相应的视图文件的名称,第二个参数是一个数组,表示传递给视图文件的数据。
在这个例子中,我们传递了一个 name 变量,在视图中通过使用 Blade 语法将其显示出来。
当然,视图还可以存放在 resources/views 的子目录中,用“.”号来引用子目录中的视图。
例如,如果视图存放路径是 resources/views/admin/profile.blade.php,那么我们可以这样引用它:
return view('admin.profile', $data);
判断视图是否存在
如果需要判断视图是否存在,可调用 View 门面上的 exists 方法,如果视图存在则返回 true:
use Illuminate\Support\Facades\View;
if (View::exists('emails.customer')) {
//
}
创建第一个有效视图
调用 View 门面上的 first 方法,可以用于创建给定视图数组中的第一个存在的视图:
use Illuminate\Support\Facades\View; return View::first(['custom.admin', 'admin'], $data);
这个功能在应用或扩展包允许视图被自定义或覆盖时很有用。
传递数据到视图
可以简单通过数组方式将数据传递到视图:
return view('greeting', ['name' => 'jack']);
除此之外,还可以通过 with 方法传递独立的数据片段到视图:
$view = view('greeting')->with('name', 'jack');
在视图间共享数据
有时候,我们需要在所有视图之间共享数据片段,这时可以使用视图门面的 share 方法,通常,需要在某个服务提供者的 boot 方法中调用 share 方法,你可以将其添加到 AppServiceProvider 或生成独立的服务提供者来存放这段代码逻辑:
<"htmlcode"><"htmlcode"><"htmlcode">View::composer( ['profile', 'dashboard'], 'App\Http\ViewComposers\MyViewComposer' ); composer 方法还支持 * 通配符,允许将一个 Composer 添加到所有视图: View::composer('*', function ($view) { // });视图创建器
视图创建器和视图 Composer 非常类似,不同之处在于前者在视图实例化之后立即失效而不是等到视图即将渲染。
使用 View 门面的 creator 方法即可注册一个视图创建器:
View::creator('profile', 'App\Http\ViewCreators\ProfileCreator');以上这篇Laravel5.5 视图 - 创建视图和数据传递示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?