首页 > 解决方案 > 如何忽略文件的类型检查?

问题描述

鉴于我有以下三个文件:

index.js

// @ts-check
const NODE_MAJOR_VERSION = process.versions.node.split('.')[0];

const dependency = NODE_MAJOR_VERSION < 12 
  ? require('./legacy.js') 
  : require('./current.js');

dependency("hello world");

遗留.js

// @ts-check
module.exports = () => { /* some code for old node versions only */ }

current.js

// @ts-check
module.exports = () => { /* some code for newer node versions only */ }

我想检查我的两种情况(node < 12node >= 12)的代码。

我的想法是有两个tsconfig.json文件并在@types/node安装不同版本的情况下运行两次类型检查。例如:

npm install `@types/node@12.0.0`
tsc -p tsconfig.old.json
npm install `@types/node@latest`
tsc -p tsconfig.json

不幸的是,我没有找到一种方法来排除current.js类型检查,因为index.js.

到目前为止,我尝试过:

tsconfig.json

   exclude: [ "current.js" ]

但是,它仍然告诉我,current.js一旦我运行,它就会包含类型错误tsc

标签: javascripttypescript

解决方案


推荐阅读