首页 > 解决方案 > 如何在视图中设置我们从控制器获得的值

问题描述

我在刀片中有一个视图需要来自 api 的某些数据,如果我 dd 值它会给我一个我需要的正确值,但是如果我尝试回显该值,那么它将弹出这个错误 Undefined property: stdClass ::$数据

这是我在刀片视图中的代码

@php
  $a = new stdClass();
  $a = $vehicleController::getDriverName($vehicle->driver_id)->data[0]->name;
  echo $a;
@endphp

这是我 dd($a) https://i.stack.imgur.com/3v7VM.png的值

这是完整数据https://i.stack.imgur.com/f9Kyu.png

标签: laravelrestcontrollerlaravel-bladelaravel-7

解决方案


我不明白您为什么要使用 echo 在刀片中显示数据。您应该避免将应用程序逻辑放在视图中。相反,请考虑在返回视图之前调用getDriverName方法,然后按照此处文档中的说明将数据传递给刀片:https ://laravel.com/docs/8.x/blade#passing-data-to-components

正确完成后,您可以像这样访问刀片中的数据:

<div>
    {{ $vehicle->data[0]->name }}
</div>

推荐阅读