优化项目管理
This commit is contained in:
1 parent
2f6cdbb3cd
commit
a8c09c1db5
30 files changed
+1654
-346
No files matched your search
@@ -84,7 +84,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref, reactive, watch } from "vue";
|
||||
import { ref, reactive, watch, nextTick } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { Edit, Delete, ArrowDown } from "@element-plus/icons-vue";
|
||||
import {
|
||||
@@ -127,9 +127,12 @@ const logRef = ref();
|
||||
const econtractRef = ref();
|
||||
const invoiceRef = ref();
|
||||
|
||||
// 同时监听展开状态与目标合同 id:
|
||||
// 页面被 keep-alive 缓存时,从其他入口再打开另一份合同时 visible 可能一直是 true(未变化),
|
||||
// 只监听 visible 会导致不重新加载、内容串成上一份合同。
|
||||
watch(
|
||||
() => props.visible,
|
||||
async (val) => {
|
||||
[() => props.visible, () => props.contract?.id],
|
||||
async ([val]) => {
|
||||
if (!val) return;
|
||||
activeTab.value = "basic";
|
||||
counts.payback = 0;
|
||||
@@ -146,6 +149,9 @@ watch(
|
||||
} finally {
|
||||
loading.value = false;
|
||||
}
|
||||
// 抽屉已打开时不会再触发 @opened,这里主动刷新各 Tab 数据(回款 / 附件 / 日志)
|
||||
await nextTick();
|
||||
loadAll();
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
Reference in new issue
Block a user