gpt4 book ai didi

javascript - Vue 测试 - '... .push is not a function'

转载 作者:行者123 更新时间:2023-12-04 08:27:58 25 4
gpt4 key购买 nike

我正在尝试测试向现有对象添加新条目的组件的方法。

addTag: function () {
this.value[this.field.key].push(this.tag)
this.tag = ''
}
我只是想通过在我的测试中调用该方法
    wrapper.setProps({
field: {
key: 'tag'
},
value: {
tag: {}
}
})
...
wrapper.vm.addTag()
但它抛出并出错
TypeError: this.value[this.field.key].push is not a function
我已经预先设置了所有需要的数据和 Prop (field.key 和 tag),所以这不是问题。运行其他方法完全正常, push似乎是问题所在

最佳答案

这是因为 this.value['tag']是一个对象,而不是一个数组,所以没有 push方法。
将其定义为数组会改变这一点:

wrapper.setProps({
field: {
key: 'tag'
},
value: {
tag: []
}
})

关于javascript - Vue 测试 - '... .push is not a function',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65171497/

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