Vue组件不显示来自API的寄存器

时间:2019-06-28 07:19:05

标签: vue.js laravel-5

请帮助解决此问题 我正在尝试显示来自api路由的寄存器(/ api / orders) 当我从axios调用它们时,我使用get petittion到/ api / orders

这是我的方法:

listarOrdenesIngreso (page,buscar,criterio) {
    let me=this;
    var url= '/api/orders?page=' + page + '&buscar='+ buscar +'&criterio='+ criterio;
    axios.get(url)
        .then(function (response) {
            var respuesta= response.data;
            me.arrayOrders = respuesta.orders.data;
            me.pagination = respuesta.pagination;
            // handle success

         })
........ 

这是API路由route / api.php文件

Route::resource('orders', 'EntryOrderController',['except' => ['create','edit']]);

以及此处的控制器代码(EntryOrderController.php文件)

public function index(Request $request) 
    { if (!$request->ajax()) return redirect('/');
     $entries = EntryOrder::all(); 
    //return response()->json(['data' => $entries], 200); 

    return $this->showAll($entries); 
}

enter image description here

问题在图1中显示,其中在vue组件中未显示任何寄存器当我从浏览器中的URL调用它们时,请正确显示具有数据的数组。 enter image description here

希望您能帮助我

1 个答案:

答案 0 :(得分:1)

您的问题是请求结果数据未建立

 `listarOrdenesIngreso (page,buscar,criterio){
                let me=this;
                var url= '/api/orders?page=' + page + '&buscar='+ buscar + '&criterio='+ criterio;
                axios.get(url)
                    .then(function (response) {
                        me.pagination = response.pagination;
                        me.arrayOrders = response.data.data; // do this 
                    //me.arrayOrders = respuesta.orders.data; // errors here

                        // handle success

                    })