【问题标题】:Expected Object, got Array laravel vue pagination预期对象,得到数组 laravel vue 分页
【发布时间】:2021-07-05 13:19:52
【问题描述】:

大家好,我相信我们都使用 laravel vue 分页,我过去也使用过,但现在出现错误,不知道为什么。

所以我有我的 getresults 方法

getResults(page = 1) {

                axios.get('api/category?page=' + page)
                    .then(response => {
                        this.categories = response.data;
                        
                    });
                
            
                    
                }


我返回的数据,即类别{}(它是一个对象)

data() {
            return {
                
                categories: {},
                // Create a new form instance
                form: new Form({
                    id:'',
                    name: '',
                    active: ''
                }),
      
               
            }
        },

最后是分页

<pagination :data="categories" @pagination-change-page="getResults">
                      <span slot="prev-nav">&lt; Previous</span>
                      <span slot="next-nav"> Next &gt;</span>
</pagination>
                    

但出现错误

 type check failed for prop "data". Expected Object, got Array 

即使它是一个对象,也请需要帮助。谢谢

【问题讨论】:

  • 请记录this.categories = response.data;之后的类别
  • 你是这个意思吗? axios.get('api/category?page=' + page) .then(response =&gt; { this.categories = response.data; console.log(categories) });
  • 控制台的输出是什么?
  • @BoussadjraBrahim 什么都没有
  • 哦,伙计,将其打印为 this.categories 而不是类别

标签: vue.js laravel-7


【解决方案1】:

大家好,终于解决了这个错误,我不得不重新调整从我的 api 获取数据的方式

原来是这样

 $categories = Category::latest()->paginate(10);
return response([ 'categories' => CategoryResource::collection($categories), 'message' => 'Retrieved successfully'], 200);

我改成了这个

return Category::latest()->paginate('10');

这解决了分页错误。再次感谢您

【讨论】:

    猜你喜欢
    • 2020-06-12
    • 2019-04-24
    • 2021-03-26
    • 2021-08-15
    • 2014-05-14
    • 2015-03-11
    • 2021-04-09
    • 2021-02-15
    • 2020-05-13
    相关资源
    最近更新 更多