Browse Source

fix: 时间轴自动滚动到对应位置修改

wrr
song 4 years ago
parent
commit
e5a13c89df
  1. 1
      CHANGELOG.md
  2. 5
      src/components/TimeLine/TimeLine.vue
  3. 10
      src/pages/project/project.vue
  4. 9
      src/store/task/mutations.js
  5. 1
      src/store/task/state.js

1
CHANGELOG.md

@ -127,6 +127,7 @@
- | 修改角色栏组件 | [a54c601](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/a54c601) - | 修改角色栏组件 | [a54c601](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/a54c601)
- | 修改项目详情页返回首页bug | [e942887](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/e942887) - | 修改项目详情页返回首页bug | [e942887](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/e942887)
- | 全局任务点击时保存角色id到本地 | [e1a17c5](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/e1a17c5) - | 全局任务点击时保存角色id到本地 | [e1a17c5](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/e1a17c5)
- | 分享未登录提示修改 | [80eb4c5](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/80eb4c5)
- | 分享项目链接 | [d867239](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/d867239) - | 分享项目链接 | [d867239](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/d867239)
- | 切换到默认项目角色没有激活状态的bug | [438d448](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/438d448) - | 切换到默认项目角色没有激活状态的bug | [438d448](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/438d448)
- | 切换日历时查询小红点 | [7091789](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/7091789) - | 切换日历时查询小红点 | [7091789](https://dd.tall.wiki/gitea/wally/tall-mui-3-project/commits/7091789)

5
src/components/TimeLine/TimeLine.vue

@ -108,12 +108,17 @@ export default {
if (taskId) { if (taskId) {
this.setScrollToTaskId(`a${taskId}`); this.setScrollToTaskId(`a${taskId}`);
this.$t.storage.setStorageSync('taskId', ''); // this.$t.storage.setStorageSync('taskId', ''); //
} else {
const item = this.tasks.find(task => task.detailId);
if (item) {
this.setScrollToTaskId(`a${item.id}`);
} else { } else {
// taskId // taskId
// 线id 线 // 线id 线
const task = this.tasks.find(item => this.$moment(+item.planStart).isSame(this.timeNode, this.timeGranularity)); const task = this.tasks.find(item => this.$moment(+item.planStart).isSame(this.timeNode, this.timeGranularity));
task && this.setScrollToTaskId(`a${task.id}`); // task id task && this.setScrollToTaskId(`a${task.id}`); // task id
} }
}
}, },
}, },
}; };

10
src/pages/project/project.vue

@ -29,7 +29,7 @@ export default {
computed: { computed: {
...mapState('user', ['user', 'token']), ...mapState('user', ['user', 'token']),
...mapState('role', ['visibleRoles', 'roleId']), ...mapState('role', ['visibleRoles', 'roleId']),
...mapState('task', ['timeNode', 'timeUnit', 'tasks', 'regularTask', 'newProjectInfo', 'showSkeleton']), ...mapState('task', ['timeNode', 'timeUnit', 'tasks', 'regularTask', 'newProjectInfo', 'showSkeleton', 'showScrollTo']),
...mapState('project', ['project']), ...mapState('project', ['project']),
...mapGetters('task', ['timeGranularity']), ...mapGetters('task', ['timeGranularity']),
...mapGetters('project', ['projectId']), ...mapGetters('project', ['projectId']),
@ -113,6 +113,7 @@ export default {
'setShowSkeleton', 'setShowSkeleton',
'setTopEnd', 'setTopEnd',
'setBottomEnd', 'setBottomEnd',
'setShowScrollTo',
]), ]),
// //
@ -125,11 +126,11 @@ export default {
// //
let timer = null; let timer = null;
timer = setInterval(() => { timer = setInterval(() => {
if (!this.showSkeleton) { if (this.showScrollTo) {
clearInterval(timer); clearInterval(timer);
this.$nextTick(() => this.$refs.timeLine.setScrollPosition()); this.$nextTick(() => this.$refs.timeLine.setScrollPosition());
} }
}, 1000); }, 500);
}, },
// || // ||
@ -188,6 +189,7 @@ export default {
// TODO: // TODO:
console.error('err: ', err); console.error('err: ', err);
} else { } else {
this.setShowScrollTo(true);
// //
// //
if (data && data.length) { if (data && data.length) {
@ -270,7 +272,7 @@ export default {
oldTasks = flatten(oldTasks); // 1 oldTasks = flatten(oldTasks); // 1
this.clearTasks(); // setUpTasks setUpTasks this.clearTasks(); // setUpTasks setUpTasks
type === 0 ? this.setUpTasks(oldTasks) : this.setUpTasks(oldTasks); type === 0 ? this.setUpTasks(oldTasks) : this.setDownTasks(oldTasks);
}, },
/** /**

9
src/store/task/mutations.js

@ -192,6 +192,15 @@ const mutations = {
setShowSkeleton(state, show) { setShowSkeleton(state, show) {
state.showSkeleton = show; state.showSkeleton = show;
}, },
/**
* 是否设置时间轴自动滚动的位置
* @param {Object} state
* @param {Boolean} show
*/
setShowScrollTo(state, show) {
state.showScrollTo = show;
},
}; };
export default mutations; export default mutations;

1
src/store/task/state.js

@ -19,6 +19,7 @@ const state = {
tasks: [], // 所有的定期任务 tasks: [], // 所有的定期任务
showSkeleton: false, // 定期任务骨架屏 showSkeleton: false, // 定期任务骨架屏
newProjectInfo: {}, newProjectInfo: {},
showScrollTo: false, // 是否可以设置时间轴自动滚动的位置
}; };
export default state; export default state;

Loading…
Cancel
Save