gpt4 book ai didi

javascript - JEST 测试时出现 TS 错误 - SelectOptions.find 不是函数

转载 作者:行者123 更新时间:2023-12-02 23:17:23 25 4
gpt4 key购买 nike

我有一个简单的实用程序,其中我根据一些比较功能返回一个 bool 值:

import ISelect from './interfaces/ISelect';

const checkCaseSensitiveSelectUtil = (inputValue: ISelect, selectOptions: ISelect[]): boolean => {
const exactValueExists = selectOptions.find(input => input.value === inputValue.value);
return !exactValueExists;
};

export default checkCaseSensitiveSelectUtil;

这是我的测试:

  it('should return TRUE if the values are equal', () => {
const selectedOptions = {
label: '*positions',
value: '*positions'
};
expect(checkCaseSensitiveSelectUtil(caseInsensitiveValues, selectedOptions)).toEqual(true);
});

这是我收到的错误:

    TypeError: selectOptions.find is not a function

2 |
3 | const checkCaseSensitiveSelectUtil = (inputValue: ISelect, selectOptions: ISelect[]): boolean => {
> 4 | const exactValueExists = selectOptions.find(input => input.value === inputValue.value);
| ^
5 | return !exactValueExists;
6 | };
7 |

知道该怎么做吗?我的意思是整个事情都运转正常。但我有什么错吗?

最佳答案

find 函数适用于数组,而不适用于对象。

const selectedOptions = {
label: '*positions',
value: '*positions'
};

将上面的内容更改为有效的数组对象。

试试这个

const selectedOptions = [{
label: '*positions',
value: '*positions'
}];

关于javascript - JEST 测试时出现 TS 错误 - SelectOptions.find 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57114472/

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