You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel中如何在视图间传递数据并嵌入渲染子视图展示

Laravel视图嵌入并传参的实现方法

首先修正你控制器代码中的语法错误:数组中age键名后多了一个多余的.,修正后控制器代码如下:

$data = [
  'name' => 'Jony',
  'age' => 18
];
return View::make("user/detail", compact('data'));

核心实现方式

你只需要在detail.blade.php的指定渲染位置使用Blade的@include指令即可,该指令支持引入子视图,默认继承父视图的所有可用变量,也可以手动指定要传递的变量,提升代码可读性。
修改后的detail.blade.php对应位置代码:

<div class="user-informatio">
    {{-- 引入user子视图,手动传递$data变量 --}}
    @include('user.user', ['data' => $data])
</div>

规则说明

  • @include的第一个参数为子视图的路径,规则和View::make一致,使用.分隔目录层级,无需写.blade.php后缀
  • 第二个参数为可选的变量数组,数组的键名就是子视图中可以调用的变量名。即使不手动传这个参数,父视图已有的$data变量也可以直接在user.blade.php中使用,手动传参更便于后续代码维护
  • 子视图user.blade.php的原有代码无需做任何修改,直接就可以读取到$data变量渲染对应内容

内容的提问来源于stack exchange,提问作者Miedkes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 05:45:03