import products from "services/products";
jest.mock("services/products", () => {
return {
getProducts: jest
.fn()
.mockImplementation(() => Promise.resolve([product, product])),
};
});
((products.getProducts as unknown) as jest.Mock).mockResolvedValueOnce([product, product]);
为什么这个 [product, product] 数组当它到达代码时是 Promise {[product, product]}
结果我在那个数组映射上收到一个错误(array.map 不是一个函数)
答案 0 :(得分:0)
jest.mock("services/products", () => {
return {
getProducts: jest
.fn()
.mockImplementation(() => [product, product]),
};
});
我需要从 jest 模拟函数中删除 Promise.resolve() ,因为我不是在修改承诺,而且我也需要删除它,因为它是多余的:
((products.getProducts as unknown) as jest.Mock).mockResolvedValueOnce([product, product]);