vaemusic / datav-vue3

datav Vue3+TS+Vite版
https://datav-vue3.netlify.app
MIT License
509 stars 71 forks source link

如下面图,当asideWidth动态变化时,border11的宽度无法动态变化 #11

Closed zhuangYuFeiHelloGit closed 2 years ago

zhuangYuFeiHelloGit commented 2 years ago

image

vaemusic commented 2 years ago

可以在 asideWidth 变动时,调用边框组件的 initWH 方法试试,文档里有该方法的说明和使用例子。地址:Border initWH

zhuangYuFeiHelloGit commented 2 years ago

可以在 asideWidth 变动时,调用边框组件的 initWH 方法试试,文档里有该方法的说明和使用例子。地址:Border initWH

感谢回复,我查看了这个链接。请问如何在ts中导入 border的类型。我现在ts的校验认为 const dvBorder = ref(null); dvBorder .value 的类型为 never,无法找到 initWH方法

zhuangYuFeiHelloGit commented 2 years ago

可以在 asideWidth 变动时,调用边框组件的 initWH 方法试试,文档里有该方法的说明和使用例子。地址:Border initWH

我通过 const dvBorder = ref<any>(null); 的方式调用了 initWH() ,边框的问题已经解决了。 如果可以的话我还是想导入 dv-border-box-11 的类型

vaemusic commented 2 years ago

可以在 asideWidth 变动时,调用边框组件的 initWH 方法试试,文档里有该方法的说明和使用例子。地址:Border initWH

我通过 const dvBorder = ref<any>(null); 的方式调用了 initWH() ,边框的问题已经解决了。 如果可以的话我还是想导入 dv-border-box-11 的类型

那可能还需要再导出一下组件的 InstanceType,目前我还没好的方案

zhuangYuFeiHelloGit commented 2 years ago

@vaemusic 好的谢谢

vaemusic commented 2 years ago

可以在 asideWidth 变动时,调用边框组件的 initWH 方法试试,文档里有该方法的说明和使用例子。地址:Border initWH

我通过 const dvBorder = ref<any>(null); 的方式调用了 initWH() ,边框的问题已经解决了。 如果可以的话我还是想导入 dv-border-box-11 的类型

在最新版本 1.3.3 中,用 tsx 重写了边框组件,已经解决该问题。

可以使用下面代码获取边框组件的类型

import { BorderBox11 } from '@kjgl77/datav-vue3'

const dvBorder11 = ref<InstanceType<typeof BorderBox11> | null>(null)
dvBorder11.value?.initWH()

边框组件的引入,也推荐使用这种方法以获得更好的 TS 支持