vue-test-utils + Package 器的类型脚本类型.vm

dgsult0t  于 2022-12-14  发布在  Vue.js
关注(0)|答案(1)|浏览(142)

这里有一个问题。曾经使用过typescript + vue-test-utils并尝试为测试操作一个值,例如:一个月一个月?
我试过了,它成功了,但是ts linter在这个问题上疯了,因为它不知道vm里面的aCoolRefValueToManipulate是什么。
有人知道怎么解决这个问题吗?

棉绒告诉我:

Property 'showTopDown' does not exist on type '{ $: ComponentInternalInstance; $data: {}; $props: Partial<{}> & Omit<Readonly<ExtractPropTypes<{}>> & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>; ... 10 more ...; $watch(source: string | Function, cb: Function, options?: WatchOptions<...> | undefined): WatchStopHandle; } & Readonly<...> & Sha...'.ts(2339)

溶液

一个很酷的家伙帮我做了官方的Vue Discord Server

(wrapper.vm as any).aCoolRefValueToManipulate
2admgd59

2admgd591#

我们有没有其他方法不使用“any”来访问wrapper.vm的方法?
我刚发现这件事,可以试试:

type TestWrapper<T> = VueWrapper<ComponentPublicInstance & T>
let wrapper: TestWrapper<Partial<{ myMethod: () => void }>>

wrapper.vm.myMethod?.()

相关问题