gpt4 book ai didi

vue.js - 在 vue-test-utils 中的 stub 上使用键修饰符发出 keydown 事件

转载 作者:行者123 更新时间:2023-12-05 03:56:34 25 4
gpt4 key购买 nike

我有一个带有 .down 修饰符的 keydown 事件的自动 stub 子组件。我想在我的测试中触发这个事件。

component.vue 中的某处:

<child-component @keydown.down="myFn()" />

component.spec.js 中的某处:

 // I expect the keydown.down event to be triggered:
wrapper.find({name: 'child-component'}).vm.$emit('keydown.down')

这行不通。我能够触发事件的唯一方法是删除修饰符 .down,或者向事件添加 .native 修饰符。很遗憾,我无法使用 .native 修饰符。

我尝试过的其他事情:

wrapper.find({name: 'child-component'}).trigger('keydown.down')

wrapper.find({name: 'child-component'}).vm.$emit('keydown', {keyCode: 40})

最佳答案

解决方案是提供一个 KeyboardEvent 作为 $emit 函数的第二个参数,以及键修饰符的 keyCode。所以如果我们想触发一个 keydown.down 事件,我们可以这样做:

wrapper.find({name: 'child-component'}).vm.$emit(
'keydown',
new KeyboardEvent('keydown', {
keyCode: 40
})
)

关于vue.js - 在 vue-test-utils 中的 stub 上使用键修饰符发出 keydown 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59269085/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com