fix: :key 强制子组件重建 + 拆除嵌套滚动锁
- detail.vue: 新增 dictVersion,loadUsers 后自增驱动子组件 :key 重建 - WorkspaceArea/TaskSwipeCards/TreeCanvas 绑定 :key='...-'+dictVersion - .page-container: flex → block,让页面自然流式撑开 - .workspace-area: flex:1+overflow:hidden → height:auto - .is-locked: 仅锁定任务模式下才 height:100vh+overflow:hidden - .task-list: flex:1+overflow-y:auto → height:auto
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<view class="workspace-area">
|
||||
<view class="workspace-area" :class="{ 'is-locked': !!lockedTaskId }">
|
||||
<!-- 0任务 -->
|
||||
<view v-if="!product.task_tree || !product.task_tree.length" class="zero-task">
|
||||
<text class="zero-icon">📋</text>
|
||||
@ -229,11 +229,12 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.workspace-area { flex: 1; display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
|
||||
.workspace-area { height: auto; display: flex; flex-direction: column; }
|
||||
.workspace-area.is-locked { height: 100vh; overflow: hidden; }
|
||||
.list-header { display: flex; align-items: baseline; justify-content: space-between; padding: 8px 4px; flex-shrink: 0; }
|
||||
.list-title { font-size: 14px; font-weight: 700; color: #1f2937; }
|
||||
.list-hint { font-size: 11px; color: #9ca3af; }
|
||||
.task-list { flex: 1; overflow-y: auto; min-height: 0; }
|
||||
.task-list { height: auto; }
|
||||
.task-list-item { display: flex; align-items: flex-start; justify-content: space-between; background: #fff; border-radius: 12px; padding: 14px; margin-bottom: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); border-left: 4px solid transparent; }
|
||||
.task-list-item.s-yellow { border-left-color: #f59e0b; }
|
||||
.task-list-item.s-blue { border-left-color: #3b82f6; }
|
||||
|
||||
Reference in New Issue
Block a user