Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/36.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
Reactjs React Typescript未给出类型检查错误_Reactjs_Typescript - Fatal编程技术网

Reactjs React Typescript未给出类型检查错误

Reactjs React Typescript未给出类型检查错误,reactjs,typescript,Reactjs,Typescript,我在React中遇到了一个奇怪的问题,在运行npm start或npm build后,TypeScript没有显示任何错误。下面是我的一个代码示例,其中我为函数参数和变量指定了无效值。这段代码没有错误,而且编译得很好,即使它应该失败。我最近将react脚本从v3升级到v4,这是我能想到的唯一可能导致这种情况的原因。我使用的是JS和TS的混合 export default function myFunction( value: Function = 100, ) { const tes

我在React中遇到了一个奇怪的问题,在运行
npm start
npm build
后,TypeScript没有显示任何错误。下面是我的一个代码示例,其中我为函数参数和变量指定了无效值。这段代码没有错误,而且编译得很好,即使它应该失败。我最近将react脚本从v3升级到v4,这是我能想到的唯一可能导致这种情况的原因。我使用的是JS和TS的混合

export default function myFunction(
  value: Function = 100,
) {
    const test: string = 123
}
我确实收到警告,但没有错误:

Line 31:9:  'test' is assigned a value but never used  @typescript-eslint/no-unused-vars
来自Package.json的包版本

“反应脚本”:“^4.0.3”,
“类型脚本”:“^4.2.3”,
tsconfig.json

{
“编译器选项”:{
“目标”:“es5”,
“lib”:[
“dom”,
“dom.iterable”,
“下一步”
],
“allowJs”:正确,
“skipLibCheck”:正确,
“esModuleInterop”:正确,
“allowSyntheticDefaultImports”:true,
“严格”:是的,
“ForceConsistentCasingFileNames”:true,
“模块”:“esnext”,
“moduleResolution”:“节点”,
“resolveJsonModule”:true,
“隔离模块”:正确,
“noEmit”:没错,
“jsx”:“react jsx”,
“baseUrl”:“src”,
“noFallthroughCasesInSwitch”:真
},
“包括”:[
“src”
]
}

不知怎么说,TypeScript在我的发展过程中又开始工作了。奇怪的是,在最初的几次编译之后,它仍然不起作用,然后突然开始起作用。¯_(ツ)_/“”

我最近做的事情是

  • 删除节点_模块并重新安装
  • 删除我的tsconfig,然后让CRA/TypeScript生成一个新的
我的打字脚本版本也被降级了。我不确定是我降级了还是npm降级了

"react-scripts": "^4.0.3",
"typescript": "^4.1.3",
这是我的新tsconfig.json

{
“编译器选项”:{
“目标”:“es5”,
“lib”:[
“dom”,
“dom.iterable”,
“下一步”
],
“allowJs”:正确,
“skipLibCheck”:正确,
“esModuleInterop”:正确,
“allowSyntheticDefaultImports”:true,
“严格”:是的,
“ForceConsistentCasingFileNames”:true,
“noFallthroughCasesInSwitch”:正确,
“模块”:“esnext”,
“moduleResolution”:“节点”,
“resolveJsonModule”:true,
“隔离模块”:正确,
“noEmit”:没错,
“jsx”:“react jsx”,
“baseUrl”:“src”
},
“包括”:[
“src”
]
}