微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ts-loader 找不到 rxjs 7.0.1 的 index.d.ts

如何解决ts-loader 找不到 rxjs 7.0.1 的 index.d.ts

我有一个 TypeScript 项目并使用 RxJs。运行构建时,这是对 webpack 的简单调用,我收到错误

TS7016: Could not find a declaration file for module 'rxjs'. '<mypath>\node_modules\rxjs\index.js' implicitly has an 'any' type.

当与另一个有效的项目进行比较时,我注意到 RxJs 版本的不同:​​

  • "rxjs": "^6.6.7" --> 有效
  • "rxjs": "^7.0.1" --> 给出上述错误

原因似乎是最新版本确实在 node_modules/rxjs 下没有 index.d.ts 文件,而旧版本有。

我希望有人能告诉我该怎么做才能编译新版本。

Package.json

{
    "name": "calculator-browser","version": "1.0.0","description": "","main": "src/index.ts","scripts": {
        "serve": "webpack-dev-server","build": "webpack && copyfiles -f src/index.html public","test": "echo \"Error: no test specified\" && exit 1"
    },"prettier": {
        "tabWidth": 4,"useTabs": true
    },"repository": {
        "type": "git","url": "git+https://github.com/JohannesSchacht/calculatorbrowser.git"
    },"author": "","license": "ISC","homepage": "https://sch-8.de","devDependencies": {
        "copyfiles": "^2.4.1","ts-loader": "^6.2.2","typescript": "^3.8.3","webpack": "^4.42.1","webpack-cli": "^3.3.11","webpack-dev-server": "^3.10.3"
    },"dependencies": {
        "immer": "^9.0.2","redux": "^4.1.0","rxjs": "^6.6.7"
    }
}

解决方法

发生这种情况是因为您使用的是旧版本的 TypeScript。 RxJS 7 requires TS 4.2 or higher 并且在您的开发依赖项中您有版本 ^3.8.3

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。