VueJS - 在此上给出引用.$refs一种删除 Typescript 错误的类型



在粗略的伪代码中,如果我做这样的事情:

<v-menu
ref="dmenu"
other="stuff here"
@change="save"
>

然后稍后引用它:

save(val: string) {
this.$refs.dmenu.save(val)
}

我收到错误"类型'元素'上不存在属性'保存'">

是否可以声明this.$refs.上的项目属于任何类型?

这有效:

save(val) {
const m = this.$refs.dmenu as any
m.save(val)
}

但这似乎是一行额外的代码,只是为了让 Typescript 满意。

您必须将元素的类型指定为VMenu,然后访问其上的方法,否则您必须将标记的 ref 指定为 any。

(this.$refs.dmenu as any).save(val)

最新更新