Javascript 当使用jest.mock()时,如何使TSServer识别?
我有一个javascript项目,Javascript 当使用jest.mock()时,如何使TSServer识别?,javascript,typescript,jestjs,Javascript,Typescript,Jestjs,我有一个javascript项目,jsconfig.json配置正确。除了在单元测试中使用jest.mock()模拟模块外,它几乎适用于所有情况: // unit.test.js jest.mock('./api') it('does something', () => { // Linting error: // Property 'mockResolvedValue' does not exist on type () => Promise<any>
jsconfig.json
配置正确。除了在单元测试中使用jest.mock()
模拟模块外,它几乎适用于所有情况:
// unit.test.js
jest.mock('./api')
it('does something', () => {
// Linting error:
// Property 'mockResolvedValue' does not exist on type () => Promise<any>
api.loadStudents.mockResolvedValue([]);
});
//unit.test.js
笑话模拟('./api')
它('做某事',()=>{
//起毛误差:
//类型()=>Promise上不存在属性“mockResolvedValue”
api.loadStudents.mockResolvedValue([]);
});
有没有办法让TSServer知道Jest正在模拟此模块,因此导出的对象属性是
Jest.Mock
的实例?我不确定您是否找到了此问题的解决方案,但我遇到了一个解决此问题的方法。简而言之,您创建了一个新的引用,指向您正在模拟的对象(api
),您显式地将其类型转换为jest.Mocked
。问题是,我没有使用Typescript。我正在使用Javascript和jsconfig.json
啊,对不起。我误解了你的问题。我不确定你是否找到了解决这个问题的方法,但我遇到了一个解决这个问题的方法。简而言之,您创建了一个新的引用,指向您正在模拟的对象(api
),您显式地将其类型转换为jest.Mocked
。问题是,我没有使用Typescript。我正在使用Javascript和jsconfig.json
啊,对不起。我误解了你的问题。