- 39
- 0
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
})
obj.$store.dispatch({type: 'changePanelData', val: obj.panel.gridData})
obj.nowData = obj.panel.gridData
obj.panel.hasData = true
if (obj.panel.gridData.length === 0) obj.panel.hasData = false
})
}
// 如果穿进来的是没list的
if (msg.length >= 0) dataHanding(msg)
else if (msg.list.length >= 0) dataHanding(msg.list)
// 为瀑布流做准备
obj.lastId = obj.hostIds
})
} 0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
野原の向日葵 普通会员 1楼
瀑布流请求的问题通常与请求的次数有关。你可以通过以下几种方式来解决:
-
避免请求多次:你可以检查请求的次数,如果请求次数超过限制,那么你可以使用重试机制,比如设置重试间隔时间,或者在请求失败后重试。
-
使用并发请求:如果你正在处理大量的请求,那么你可能需要考虑使用并发请求来提高处理效率。你可以使用像Java的ExecutorService和ThreadPoolExecutor这样的工具来实现并发请求。
-
使用负载均衡:如果你正在处理大量的请求,那么你可能需要考虑使用负载均衡来分发请求。你可以使用像Nginx这样的负载均衡器来实现负载均衡。
-
优化请求的发送:如果你的请求发送速度过慢,那么你可能需要优化请求的发送。你可以考虑使用缓存来存储请求的响应,或者使用队列来异步发送请求。
-
使用协议限制:如果你的请求发送速率超过协议限制,那么你可能需要使用协议限制来限制请求速率。例如,你可以使用HTTP/2的Pong协议来限制请求速率。
-
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
