export function myList (obj, pageNumber, fn, url, query) { obj.panel.page.pageNumber = pageNumber let data if (query) { // 如果有傳進來查詢參數,則用傳進來的參數 console.log('------組件自帶參數------') data = query } else { // 否則,使用默認的分頁參數 console.log('------默認分頁參數------') obj.data = { 'page': obj.panel.page, 'row': { 'host_ids': obj.hostIds, 'hostIds': obj.hostIds } } data = obj.data } obj.crud.loading(obj, true) // 如果hostid改變了,則數據都清空, if (obj.lastId !== obj.hostIds) { obj.panel.gridData = [] obj.n = 1 } obj.getData(obj, url, data, msg => { // console.log(msg) obj.isFirst = false obj.startScroll = true let len // 因為返回的數據分幾種情況 所以這里得多加判斷 // 首先 如果msg為真 if (msg) { //再它的totalRow或者total也為真 if (msg.totalRow >= 0) { len = msg.totalRow } else { len = msg.total } if (msg.length >= 0) { len = msg.length } } else { len = 0 } // 設置標題總記錄數 obj.totalRow = len obj.total = len // 為了搜索和排序做的準備 if (msg) { if (msg.size) { obj.data.size = msg.size // obj.data.size.beforeId = msg.size.beforeId // obj.data.size.offset = msg.size.offset obj.n = parseInt(msg.size.offset) / parseInt(obj.panel.page.pageSize) } } else { // 顯示完頁面的記錄條數后,如果msg其實是undefined的,那么,直接return obj.crud.loading(obj, false, () => { obj.panel.hasData = false obj.reloadLock = false }) return } // 數據處理函數 function dataHanding (tmp) { // 把所有的checked設為false tmp.forEach(function (curr) { curr.checked = false }) //把新拿到的數據推進gridData中去作處理 obj.crud.loading(obj, false, o => { // 如果fn傳進來 才執行 if (fn) fn(msg) for (let entry of tmp) { obj.panel.gridData.push(entry) } // 給gridData加上序號 obj.panel.gridData.map((val, i) => { val.myNum = i + 1
瀑布流請求了兩次接口,請問怎么解決?
函數式編程
2019-03-15 22:15:27