vue-test-utils + jenis skrip taip untuk wrapper.vm
P粉054616867
P粉054616867 2023-12-26 13:38:11
0
1
518

Berikut adalah soalan. Telah menggunakan typescript + vue-test-utils dan cuba memanipulasi nilai ujian, contohnya: wrapper.vm.aCoolRefValueToManipulate = '更酷的东西'?

Nah, saya mencubanya. Ia berfungsi, tetapi linter ts menjadi gila pada yang ini kerana ia tidak tahu apa itu vm 中的 aCoolRefValueToManipulate.

Ada sesiapa tahu bagaimana untuk menyelesaikan masalah ini?

linter memberitahu saya:

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)

Penyelesaian

Beberapa lelaki hebat membantu saya menggunakan pelayan Vue Discord rasmi.

(wrapper.vm as any).aCoolRefValueToManipulate 

P粉054616867
P粉054616867

membalas semua(1)
P粉476046165

Adakah kita mempunyai cara lain untuk mengakses wrapper.vm tanpa menggunakan "mana-mana"?

Saya baru jumpa benda ni untuk dicuba:

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

wrapper.vm.myMethod?.()
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan