【发布时间】:2021-05-16 08:04:57
【问题描述】:
我正在为 Vue 组件开发代码,其中有一个列表,我希望它在其中进行分页。 我有分页,代码工作正常,直到我需要单击以转到下一页,在这种情况下为 2。 我已经放置了一个控制台日志,它甚至没有它的方法。
这是我的代码,你们能看出它有什么问题吗?
<ul class="movements-list framed half-bottom-space">
<li class="list-head">
<p>Test</p>
<p>Test2</p>
<p>Test3<small>Test4</small></p>
</li>
<li v-for="item in getItems">
<p>{{item}}</p>
<p>{{item}}</p>
<p class="minus">{{item}} <small>{{item}}</small></p>
</li>
</ul>
<paginate :page-count="getPageCount"
:page-range="3"
:margin-pages="2"
:click-handler="clickCallback"
:prev-text="'<'"
:next-text="'>'"
:container-class="'pagination'"
:page-class="'page-item'">
</paginate>
<script>
export default {
name: "cenas-component",
data: () => ({
items: ["Saab", "Volvo", "BMW", "BMW", "BMW", "BMW", "BMW", "BMW", "BMW", "BMW", "BMW", "BMW"],
parPage: 5,
currentPage: 1
}),
methods: {
clickCallback: function (pageNum) {
console.log('im here in clickCallback')
console.log(pageNum)
this.currentPage = Number(pageNum);
},
},
computed: {
getItems: function () {
let current = this.currentPage * this.parPage;
let start = current - this.parPage;
return this.items.slice(start, current);
},
getPageCount: function () {
console.log('getPageCount')
return Math.ceil(this.items.length / this.parPage);
}
}
}
</script>
所以基本上当我尝试单击下一个分页编号时,它不会分页,甚至不会从 1 变为 2。 如您所见,我在 clickCallback 方法中放置了一个 Console.log 并且它没有命中 console.log
你们发现代码有什么问题吗? 谢谢大家!
【问题讨论】:
标签: javascript vue.js vuejs2 vue-component