在 Laravel 中使用 Axios 检索数组

Retrieving an Array with Axios in Laravel

我正在向我的控制器功能之一发出 Axios 请求,该功能将进入我的数据库并获取所有供应商信息,但是当它 return 到我的 VUE 文件时,没有数据

这是我的要求:

mounted(){
            axios.get('/product/'+ this.url + '/suppliers/info').then(response=>console.log(response.data));

        },

这是我的控制器功能

public function getSuppliers($product){

        $suppliers = $this->supplier->getAll();

        return response()->json($suppliers);
    }

当我在控制器中删除 $suppliers 时,它拥有所有数据,所以我知道它已成功从数据库中检索到,但是当我控制台将其注销时,一旦它 return 到 VUE 数据离开了。

如果我只是控制台日志响应,这就是我看到的:-

我可以看到它是 return 所有应该存在的数组,但其中 none 有任何数据?我做错了什么?

这是我在控制器中添加 $suppliers 的片段:

来自网络的请求图像 header:-

getAll 函数:-

public function getAll()
{
    return $this->buildEntities($this->data->orderBy('name')->get());

}

您的 $suppliers 似乎不是数组,而是 eloquent 模型。所以试试这个:

return response()->json(["suppliers"=>$suppliers], 200);

并在 response.data.suppliers

中查看

** 编辑 **

问题可能出在函数 buildEntity 上。 尝试

$this->data->orderBy('name')->get()