vue3 + elemnt plus 使用el-tooltip virtual-ref属性 报错 不能将类型 getBoundingClientRect = top number; left number; bottom number; right number; ; 分配给类型Measurable。 在这些类型中getBoundingClientRect 返回的类型不兼容。ts2322 应
这个报错是因为 Element Plus 中的 Measurable 类型定义与 Tooltip 组件中的 virtual-ref 属性所需的类型不一致导致的。可以通过添加一个类型断言来解决这个问题,示例代码如下:
<template>
<el-button v-tooltip="{ content: 'Tooltip Content', placement: 'top', visibleArrow: true, virtualRef: $refs.btn as Measurable }">
Button
</el-button>
</template>
<script>
import { ref } from 'vue';
import { Measurable } from 'element-plus/lib/utils/types';
export default {
setup() {
const btnRef = ref(null);
return {
$refs: {
btn: btnRef,
},
};
},
};
</script>
在这个示例中,我们在 Tooltip 组件的 virtualRef 属性中添加了一个类型断言 as Measurable,将实际的类型转换为 Tooltip 组件所需的 Measurable 类型。这样就可以解决这个类型不兼容的问题了
原文地址: https://www.cveoy.top/t/topic/cjxz 著作权归作者所有。请勿转载和采集!