首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TSC显示依赖模块类型错误的原因

TSC显示依赖模块类型错误的原因
EN

Stack Overflow用户
提问于 2017-03-21 17:52:49
回答 1查看 4.1K关注 0票数 6

我正在为我的应用程序使用一些依赖项,比如模块fuse-box

tsconfig:

代码语言:javascript
复制
{
  "compilerOptions": {
    "noImplicitAny": true
  },
  "exclude": [
    "**/node_modules/*", 
  ]
}

我的代码库中有一个文件:

代码语言:javascript
复制
import { FuseBox } from 'fuse-box'

FuseBox.init({
  homeDir: '.',
  outFile: './built/out.js'
}).bundle('>app.ts')

TSC编译器给出了错误:

代码语言:javascript
复制
../node_modules/fuse-box/dist/typings/c
ore/WorkflowContext.d.ts(137,9): error TS7020: Call signature, which lacks retu
rn-type annotation, implicitly has an 'any' return type.

这是因为我的noImplicitAny": true设置。我只是在想,为什么它会分析出我的代码库中的东西,然后打印错误。这样的错误对开发过程和编译安全吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-22 05:25:50

编译器需要遍历模块类型,以便为您进行适当的类型检查。

如果您想关闭它,可以在您的tsconfig.json中这样做:

代码语言:javascript
复制
{
  "compilerOptions": {
    "skipLibCheck": true
  }
}

这需要TypeScript 2.0

更新:随着TypeScript使用量的增加和用例的扩展,我们开始看到即使skipLibCheck设置为true也会出现问题。

其中一个问题是,如果包中包含node_modules文件,它不会跳过签入.ts

问题标记为working as intended

此外,如果包使用的TypeScript版本与您正在使用的版本不同,并且它们之间会有中断的更改,那么您就会遇到编译错误。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42934675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档