我正在使用最新版本的Visual Studio Code。 VS Code使用Typescript v3.3.3。 我已经通过npm在本地(save-dev)和全局安装了以下软件包:
我还创建了一个tsconfig.json文件,并添加了属性-“ resolveJsonModule:true”
我已经创建了一个config.json文件,并且在上面添加了resolveJsonModule属性后,它已在我的.ts文件中正确地提取了-
Import config from './config.json';
但是,每当我运行脚本时,都会出现以下错误:
Error: TypeScript compilation failed.
/Users/test/Documents/Dev_Node/TestCafe/UK/homepage-fixture.ts (2, 20):
Cannot find module './config.json'. Consider using '--resolveJsonModule'
to import module with '.json' extension at Function._reportErrors (/Users/test/Documents/Dev_Node/TestCafe/node_modules/testcafe/src/compiler/te st-file/formats/typescript/compiler.js:45:15) at TypeScriptTestFileCompiler._reportErrors [as _precompileCode (/Users/test/Documents/Dev_Node/TestCafe/node_modules/testcafe/src/compiler/test-file/formats/typescript/compiler.js:79:40) at TypeScriptTestFileCompiler._precompileCode [as_compileCodeForTestFiles (/Users/test/Documents/Dev_Node/TestCafe/node_modules/testcafe/src/compiler/te
st-file/api-based.js:110:29) at TypeScriptTestFileCompiler._compileCodeForTestFiles [as precompile (/Users/test/Documents/Dev_Node/TestCafe/node_modules/testcafe/src/compiler/test-file/api-based.js:169:21) at precompile (/Users/test/Documents/Dev_Node/TestCafe/node_modules/testcafe/src/compiler/index.js:70:48) at Compiler._precompileFiles (/Users/test/Documents/Dev_Node/TestCafe/node_modules/testcafe/src/compiler/index.js:66:54) at _precompileFiles (/Users/test/Documents/Dev_Node/TestCafe/node_modules/testcafe/src/compiler/index.js:105:91) at map (/Users/test/Documents/Dev_Node/TestCafe/node_modules/testcafe/src/compiler/i ndex.js:105:41)
我已经尝试过此处提供的解决方案:Typescript compiler error when importing json file
但是他们都不适合我。
答案 0 :(得分:5)
根据这个长期存在的问题:https://github.com/DevExpress/testcafe/issues/1845 TestCafe使用其自己的TypeScript配置,并且不支持您使用的任何tsconfig.json。
所以在我看来,您的选择是:
resolveJsonModule
标志的自己的tsconfig.json自己编译TypeScript代码,并仅让TestCafe查看生成的JavaScript代码。 TypeScript的outDir
标志在这里可能有助于将文件复制到正确的位置。MyConfig
),并使用let json: MyConfig = require('./config.json');
导入JSON文件,虽然不如让TypeScript搞清楚,但它应该可以解决TestCafe的问题。限制。