【问题标题】:vue pagination total didn't workvue 分页总数不起作用
【发布时间】:2018-03-26 05:50:59
【问题描述】:
<template>
  ...
  <div class="pagination">
     <el-pagination
        @current-change="handleCurrentChange"
        layout="prev, pager, next"
        :total="totalCount">
     </el-pagination>
  </div>
</template>

<script>
    import Vue from 'vue';
    Vue.use(ElementUI);
    export default {
        data() {
            return {
                tableData: [],
                orderTableUrl: setting.orderTableUrl,
                width: 110,
                page_size: 10,
                page_num: 1,
                messages: [],
                totalCount: 100,
            }
        },
        created() {
            this.getTableData()
        },
        methods: {
            getTableData: function () {
                let self = this;
                axios.Get({
                    url: self.orderTableUrl,
                    params: {
                        'page_size': self.page_size,
                        'page_num': self.page_num
                    },
                    callback: function (res) {
                        self.tableData = res.data.orders;
                        self.totalCount = res.data.orders_total_pages;
                        console.log(self.totalCount)
                    }
                });
            },
      }    
}

分页部分使用element.ui。 这是我的问题:在方法回调中,console.log 可以回显实际总页数,但不能在模板上显示,只能在窗口中看到第 1 页。 我对此感到很困惑。 是不是说vue可以在view上立即显示变化数据

【问题讨论】:

  • 您的代码应该可以工作。你可以试试Vue.set(self, 'tableData', res.data.orders); 而不是self.tableData = res.data.orders; 只是为了它......
  • 感谢您的回答。 'tableData' 用于表格数据。它可以工作。 'totalCount' 也可以看到它最终会发生变化。但我很困惑为什么它不能在模板上显示
  • 嗯...您没有在粘贴的模板中的任何地方使用它。

标签: javascript vue.js element-ui


【解决方案1】:

完成问题。 ':total' 确实有效,只是惊讶于它意味着对象数而不是页数......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-01
    • 2018-12-13
    • 2013-08-27
    • 1970-01-01
    • 2018-03-28
    • 2016-01-11
    相关资源
    最近更新 更多