您好,登錄后才能下訂單哦!
vue是一種輕巧便捷的框架,那么如何進行對于數據加載的刷新呢?以下就是我對于vue.js數據加載的一點想法
源碼:
<div @scroll="onScroll($event)" > <ul class="shop-brand-index" v-show="sitems.length > 0" > <li v-for="item in sitems"> <div @click="linkUrl(item.code)"><img v-bind:src="item.publicImg"></div> </li> </ul> <div class="loading_wrap myload disn"> <p>加載中...</p> <i class="loading"></i> </div> </div>
解析:
$(function() { var pageNum = 1; var pageSize = 6; vue = new Vue({ el: '#app', data: { items: [], pageNum: pageNum, pageSize: pageSize, rawItems: [], sitems:[] }, methods: { getList: function() { $.showLoading(); this.$http.get(store.list, { pageNum: pageNum, pageSize: pageSize }).then(function(result) { $.removeLoading(); this.sitems = result.data.data.items; }, function() { $.removeLoading(); $.showAlert({ 'title': '提示', 'content': "頁面偷懶了~~", 'sure': this.close }); }) }, close: function() { history.go(-1); }, onScroll: function(event) { var offsetHeight = event.currentTarget.offsetHeight, scrollHeight = event.target.scrollHeight, scrollTop = event.target.scrollTop, scrollBottom = offsetHeight + scrollTop; if(scrollBottom == scrollHeight+10 ||scrollBottom == scrollHeight) { if(this.pageNum == Math.ceil(this.rawItems.length / this.pageSize)) { return } this.pageNum++; pageNum++; $(".myload").removeClass("disn"); vue.$http.get(store.list, { pageNum: pageNum, pageSize: pageSize }).then(function(result) { setTimeout(function() { $(".myload").addClass("disn"); vue.sitems = vue.sitems.concat(result.data.data.items); }, 2000) }, function() { $(".myload").addClass("disn"); }) } }, }, ready: function() { this.getList(); for(var i = 0; i <= 1000; i++) { this.rawItems.push(i) } } }) })
以上所述是小編給大家介紹的vue.js加載新的內容(實例代碼),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。