From 6cb63bdc594d172261c86b44e070ec946298d876 Mon Sep 17 00:00:00 2001
From: wangxiaoshuang <825034831@qq.com>
Date: Thu, 2 Apr 2026 14:36:15 +0800
Subject: [PATCH] =?UTF-8?q?=E6=B5=8F=E8=A7=88=E5=99=A8=E7=AA=97=E5=8F=A3?=
=?UTF-8?q?=E5=A4=A7=E5=B0=8F=E8=B0=83=E6=95=B4=E5=90=8E=EF=BC=8C=E6=B8=B2?=
=?UTF-8?q?=E6=9F=93=E7=9A=84=E6=A0=87=E8=AE=B0=E3=80=81=E6=AF=94=E4=BE=8B?=
=?UTF-8?q?=E5=B0=BA=E7=AD=89=E4=BD=8D=E7=BD=AE=E5=81=8F=E7=A7=BB?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/directive/resize/index.js | 16 ++++++++++++++
src/directive/resize/resize.js | 19 +++++++++++++++++
src/main.js | 3 +++
.../reading/dicoms3D/components/ReadPage.vue | 21 +++++++++++++------
4 files changed, 53 insertions(+), 6 deletions(-)
create mode 100644 src/directive/resize/index.js
create mode 100644 src/directive/resize/resize.js
diff --git a/src/directive/resize/index.js b/src/directive/resize/index.js
new file mode 100644
index 00000000..e9fba176
--- /dev/null
+++ b/src/directive/resize/index.js
@@ -0,0 +1,16 @@
+import resize from './resize'
+
+const install = function (Vue) {
+ // 绑定v-adaptive指令
+ Vue.directive('resize', resize)
+}
+
+// if (window.Vue) {
+// window['adaptive'] = adaptive
+// // eslint-disable-next-line no-undef
+// Vue.use(install)
+// }
+
+resize.install = install
+
+export default resize
diff --git a/src/directive/resize/resize.js b/src/directive/resize/resize.js
new file mode 100644
index 00000000..bfd081f5
--- /dev/null
+++ b/src/directive/resize/resize.js
@@ -0,0 +1,19 @@
+const map = new WeakMap()
+const ob = new ResizeObserver(entries => {
+ for (const entry of entries) {
+ const handler = map.get(entry.target)
+ if (handler) {
+ const { inlineSize, blockSize } = entry.contentBoxSize[0]
+ handler({ width: inlineSize, height: blockSize })
+ }
+ }
+})
+export default {
+ bind(el, binding) {
+ map.set(el, binding.value)
+ ob.observe(el)
+ },
+ unbind(el) {
+ ob.unobserve(el)
+ }
+}
\ No newline at end of file
diff --git a/src/main.js b/src/main.js
index 4ca2d123..b19e486b 100644
--- a/src/main.js
+++ b/src/main.js
@@ -70,6 +70,9 @@ import FB from '@/components/feedBack/index'
Vue.use(FB)
import FBT from '@/components/feedBackTable/index'
Vue.use(FBT)
+import resize from '@/directive/resize/index'
+// 表格自适应指令
+Vue.use(resize)
import adaptive from '@/directive/adaptive/index'
// 表格自适应指令
Vue.use(adaptive)
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue
index e2b385f0..b8ece256 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/ReadPage.vue
@@ -309,7 +309,8 @@