Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当使用jest.mock()时,如何使TSServer识别?_Javascript_Typescript_Jestjs - Fatal编程技术网

Javascript 当使用jest.mock()时,如何使TSServer识别?

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>

我有一个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>
  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
啊,对不起。我误解了你的问题。