|
|
|
@ -53,7 +53,13 @@ export default { |
|
|
|
// 滚动到顶部 |
|
|
|
async handleScrollTop() { |
|
|
|
if (!this.tasks || !this.tasks.length || this.showSkeleton) return; |
|
|
|
const startTime = this.tasks[0].planStart - 0; |
|
|
|
let startTime = null; |
|
|
|
if (this.tasks[0].length) { |
|
|
|
startTime = this.tasks[0][0].planStart - 0; |
|
|
|
} else { |
|
|
|
startTime = this.tasks[0].planStart - 0; |
|
|
|
} |
|
|
|
|
|
|
|
if (this.topEnd) { |
|
|
|
// 没有数据时 自动加载数据 |
|
|
|
console.warn('滚动到顶部没有数据时: '); |
|
|
|
@ -63,7 +69,25 @@ export default { |
|
|
|
// 有数据时 |
|
|
|
console.warn('滚动到顶部有数据时: '); |
|
|
|
const detailId = this.tasks.findIndex(task => task.detailId); |
|
|
|
const timeNode = this.tasks[detailId].planStart - 0; |
|
|
|
let timeNode = ''; |
|
|
|
|
|
|
|
if (detailId !== -1) { |
|
|
|
timeNode = this.tasks[detailId].planStart - 0; |
|
|
|
} else { |
|
|
|
let index = null; |
|
|
|
let itemIndex = null; |
|
|
|
for (let i = 0; i < this.tasks.length; i++) { |
|
|
|
const task = this.tasks[i]; |
|
|
|
if (task && task.length) { |
|
|
|
index = i; |
|
|
|
itemIndex = task.findIndex(item => item.detailId); |
|
|
|
if (itemIndex !== -1) { |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
timeNode = this.tasks[index][itemIndex].planStart - 0; |
|
|
|
} |
|
|
|
const upQuery = { |
|
|
|
timeNode, |
|
|
|
queryType: 0, |
|
|
|
@ -77,7 +101,12 @@ export default { |
|
|
|
async handleScrollBottom() { |
|
|
|
if (!this.tasks || !this.tasks.length || this.showSkeleton) return; |
|
|
|
const { tasks, timeGranularity } = this; |
|
|
|
const startTime = tasks[tasks.length - 1].planStart - 0; |
|
|
|
let startTime = null; |
|
|
|
if (tasks[tasks.length - 1].length) { |
|
|
|
startTime = tasks[tasks.length - 1][0].planStart - 0; |
|
|
|
} else { |
|
|
|
startTime = tasks[tasks.length - 1].planStart - 0; |
|
|
|
} |
|
|
|
if (this.bottomEnd) { |
|
|
|
// 没有数据时 自动加载数据 |
|
|
|
console.warn('滚动到底部没有数据时: '); |
|
|
|
@ -110,17 +139,36 @@ export default { |
|
|
|
this.setScrollToTaskId(`a${taskId}`); |
|
|
|
this.$t.storage.setStorageSync('taskId', ''); // 记录后即刻清除本地存储 |
|
|
|
} else { |
|
|
|
const item = this.tasks.find(task => task.detailId); |
|
|
|
console.log('item: ', item); |
|
|
|
if (item) { |
|
|
|
this.setScrollToTaskId(`a${item.id}`); |
|
|
|
} else { |
|
|
|
let item = null; |
|
|
|
// for (let i = 0; i < this.tasks.length; i++) { |
|
|
|
// const task = this.tasks[i]; |
|
|
|
// if (task && task.length) { |
|
|
|
// index = i; |
|
|
|
// item = task.find(item => item.detailId); |
|
|
|
// if (item !== -1) { |
|
|
|
// break; |
|
|
|
// } |
|
|
|
// } |
|
|
|
// } |
|
|
|
// const item = this.tasks.find(task => task.detailId); |
|
|
|
// if (item) { |
|
|
|
// this.setScrollToTaskId(`a${item.id}`); |
|
|
|
// } else { |
|
|
|
// 没有本地记录的taskId |
|
|
|
// 找到当前时间基准线的任务id 记录 并滚动到当前时间基准线 |
|
|
|
const task = this.tasks.find(item => this.$moment(+item.planStart).isSame(this.timeNode, this.timeGranularity)); |
|
|
|
console.log('task: ', task); |
|
|
|
task && this.setScrollToTaskId(`a${task.id}`); // 有这个task 就记录他的id |
|
|
|
for (let i = 0; i < this.tasks.length; i++) { |
|
|
|
const task = this.tasks[i]; |
|
|
|
if (task && task.length) { |
|
|
|
item = task.find(item => this.$moment(+item.planStart).isSame(this.timeNode, this.timeGranularity)); |
|
|
|
if (item) { |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
item && this.setScrollToTaskId(`a${item.id}`); // 有这个task 就记录他的id |
|
|
|
// const task = this.tasks.find(item => this.$moment(+item.planStart).isSame(this.timeNode, this.timeGranularity)); |
|
|
|
// task && this.setScrollToTaskId(`a${task.id}`); // 有这个task 就记录他的id |
|
|
|
// } |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
|