Advertisement
Guest User

Untitled

a guest
Dec 27th, 2016
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <template>
  2.     <div>
  3.         <section class="grig-home">
  4.             <div class="container">
  5.                 <div class="row">
  6.                     <div class="col-xs-12 col-sm-4 col-md-4 col-lg-4 item-grid" v-for="list in lists">
  7.                         <img :src="list._source.imagem" class="img-responsive img-grid">
  8.                     </div>
  9.                     <infinite-loading :on-infinite="onInfinite" :spinner="'spiral'"  ref="infiniteLoading" ></infinite-loading>
  10.                 </div>
  11.             </div>
  12.         </section>
  13.     </div>
  14. </template>
  15. <style>
  16. </style>
  17. <script type="text/babel">
  18.     import InfiniteLoading from 'vue-infinite-loading';
  19.     let api = 'MY API URL'
  20.     export default {
  21.         data() {
  22.             return {
  23.                 lists: [],
  24.             }
  25.         },
  26.         methods: {
  27.             onInfinite() {
  28.                 this.$Progress.start()
  29.                 this.$http.get(api, {params: {page: this.lists.length / 3}}).then((response) => {
  30.                     if (response.data.hits.hits.length) {
  31.                         this.lists = response.data.hits.hits
  32.                         //window.console.log(this.lists)
  33.                         this.$refs.infiniteLoading.$emit('$InfiniteLoading:loaded')
  34.                         if (this.lists.length === 2) {
  35.                             this.$refs.infiniteLoading.$emit('$InfiniteLoading:complete')
  36.                         }
  37.                     } else {
  38.                         this.$refs.infiniteLoading.$emit('$InfiniteLoading:complete')
  39.                     }
  40.                 }, (error) => {
  41.                     this.$Progress.fail()
  42.                     window.console.log(error)
  43.                 });
  44.             },
  45.             start () {
  46.                 this.$Progress.start()
  47.             },
  48.             set (num) {
  49.                 this.$Progress.set(num)
  50.             },
  51.             increase (num) {
  52.                 this.$Progress.increase(num)
  53.             },
  54.             decrease (num) {
  55.                 this.$Progress.decrease(num)
  56.             },
  57.             finish () {
  58.                 this.$Progress.finish()
  59.             },
  60.             fail () {
  61.                 this.$Progress.fail()
  62.             },
  63.         },
  64.         components: {
  65.             InfiniteLoading,
  66.         },
  67.     };
  68. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement