Node.js 无法使用typescript-”运行jest;找不到模块';打字稿'&引用;

Node.js 无法使用typescript-”运行jest;找不到模块';打字稿'&引用;,node.js,typescript,jestjs,ts-jest,Node.js,Typescript,Jestjs,Ts Jest,我试图用typescript运行jest,但我得到以下错误。该项目在webpack和ts节点中运行良好。由于某种原因,我不能让它与玩笑一起工作 FAIL src/__tests__/classes/Utils.spec.ts ● Test suite failed to run Cannot find module 'typescript' Require stack: - /Users/myuser/repos/project/node_modules/ts-jest/dist/conf

我试图用typescript运行jest,但我得到以下错误。该项目在webpack和ts节点中运行良好。由于某种原因,我不能让它与玩笑一起工作

FAIL  src/__tests__/classes/Utils.spec.ts
● Test suite failed to run

Cannot find module 'typescript'

Require stack:
- /Users/myuser/repos/project/node_modules/ts-jest/dist/config/config-set.js
- /Users/myuser/repos/project/node_modules/ts-jest/dist/ts-jest-transformer.js
- /Users/myuser/repos/project/node_modules/ts-jest/dist/index.js
- /Users/myuser/repos/project/node_modules/@jest/transform/build/ScriptTransformer.js
- /Users/myuser/repos/project/node_modules/@jest/transform/build/index.js
- /Users/myuser/repos/project/node_modules/jest-runtime/build/index.js
- /Users/myuser/repos/project/node_modules/@jest/core/build/cli/index.js
- /Users/myuser/repos/project/node_modules/@jest/core/build/jest.js
- /Users/myuser/repos/project/node_modules/jest/node_modules/jest-cli/build/cli/index.js
- /Users/myuser/repos/project/node_modules/jest/node_modules/jest-cli/bin/jest.js
- /Users/myuser/repos/project/node_modules/jest/bin/jest.js
- /usr/local/lib/node_modules/jest/node_modules/import-local/index.js
- /usr/local/lib/node_modules/jest/bin/jest.js
jest.config.js 这是配置。我尝试了许多关于root属性和moduleNameMapper的变体,但是无论我在配置中做了什么更改,错误消息都是完全相同的

module.exports={
预设:“ts笑话”,
测试环境:“节点”,
根:['/src'],
转换:{
“^.+\\.tsx?$”:“ts笑话”,
},
testRegex:“(/\uuuu tests./**)(\\.\124;/)(test | spec))\\\.tsx?$”,
moduleFileExtensions:['ts','tsx','js','jsx','json','node'],
模块目录:['node_modules','src'],
模块映射:{
“^src/(.*)$”:“/src/$1”,
}
};
tsconfig.json
{
“编译器选项”:{
“baseUrl”:“/”,
“路径”:{
“src/*”:[“src/*”],
“测试/*”:[“测试/*”]
},
“目标”:“es6”,
“模块”:“commonjs”,
“esModuleInterop”:正确,
“moduleResolution”:“节点”,
“emit decoromentadata”:正确,
“实验生态学者”:没错,
“源地图”:正确,
“inlineSourceMap”:false,
“outDir”:“dist”,
“lib”:[“es6”、“dom”、“esnext”、“esnext.asynciterable”],
“typeroot”:[“node_modules/@types”,“src/typings”]
},
“awesomeTypescriptLoaderOptions”:{
“useBabel”:没错,
“useCache”:正确,
“UseTranpileModule”:真
},
“包括”:[“src/***/.ts”],
“排除”:[“/node_modules/*”]
}
Utils.spec.js
从'src/Utils/classes/Utils'导入{Utils};
测试('生成6位数字'),()=>{
expect(Utils.randomNumberGenerator(6).toHaveLength(6))
});
Utils.ts
导出类Utils{
公共静态randomNumberGenerator(长度:number):number{
常量baseNumber:number=number(1+'0'。重复(长度-1));
常量随机乘数:number=Math.floor(Math.random()*number('9'+'0'。重复(长度-1));
const randomToken:number=baseNumber+randomMultiplier;
返回随机令牌;
}
}
请帮助我解决这个问题


问题是没有安装ts jest。有点不清楚的错误消息。

看起来您没有在本地deps中安装typescript?@tmhao2005“typescript”:“^3.3.3333”可以在packages.json中找到。运行了一个npm安装类型脚本以防出现同样的问题。你成功安装了那种奇怪的版本吗?应该是3.9.7instead@tmhao2005是的,但既然你指出了这一点,我就试图通过运行
npmi来升级typescript@latest
为我安装了typescript 4.0.2。仍然是同一个问题。看起来您在全球安装了jest stuff,从而解决了问题,因此请尝试在本地安装,然后重试