Olá a todos,
Eu tenho uma mensagem de erro como esta:
error TS2339: Property 'show' does not exist on type 'Element | Vue | Vue[] | Element[]'
Ele aponta para uma linha como esta:
this.$refs['myDialog'].show()
Este show
é um método implementado em TypeScript usando vue-class-component. Está em uma classe que estende o Vue. Localizei a linha em ./types/vue.d.ts aqui .
Eu acho que deve ser modificado usando genéricos como este:
readonly $refs: { [key: string]: [V extends Vue] | Element | Array<V extends Vue> | Array<Element>};
Mas não funciona apenas fazendo isso.
Alguém sabe como fazer certo?
Obrigado!
Você precisa lançar <YourComonent>this.$refs
ou reificar $refs
.
https://github.com/HerringtonDarkholme/av-ts/wiki/FAQ#2 -property-reification
sua descrição não me deixe saber como corrigir esse problema. mostre a resposta passo a passo, pls.
realmente confundir sobre ts + vue
Comentários muito úteis
Você precisa lançar
<YourComonent>this.$refs
ou reificar$refs
.https://github.com/HerringtonDarkholme/av-ts/wiki/FAQ#2 -property-reification