1. <template>
    2. <div class="infinite-list-wrapper" style="overflow:auto">
    3. <ul
    4. class="list"
    5. v-infinite-scroll="load"
    6. infinite-scroll-disabled="disabled">
    7. <li v-for="i in count" class="list-item">{{ i }}</li>
    8. </ul>
    9. <p v-if="loading">加载中...</p>
    10. <p v-if="noMore">没有更多了</p>
    11. </template>
    12. <script>
    13. export default {
    14. data () {
    15. return {
    16. count: 10,
    17. loading: false
    18. }
    19. },
    20. computed: {
    21. noMore () {
    22. return this.count >= 20
    23. return this.loading || this.noMore
    24. }
    25. },
    26. methods: {
    27. load () {
    28. this.loading = true
    29. setTimeout(() => {
    30. this.count += 2
    31. this.loading = false
    32. }, 2000)
    33. }
    34. }
    35. </script>