react-static-google-map

时间:2018-08-29 14:27:18

标签: typescript

我已经安装了react-static-google-map的最新版本。目前,我正在使用3.0版打字稿,但出现以下错误:

node_modules/react-static-google-map/typings/index.d.ts:166:3 - error TS1038: A 'declare' modifier cannot be used in an already ambient context.

166   declare const MarkerGroupComponent: StatelessComponent<MarkerGroup>;
      ~~~~~~~

node_modules/react-static-google-map/typings/index.d.ts:195:3 - error TS1038: A 'declare' modifier cannot be used in an already ambient context.

195   declare const PathGroupComponent: StatelessComponent<PathGroup>;
      ~~~~~~~

在我的tsconfig.json中,我忽略了node_modules

"exclude": [
    "node_modules",
]

如何避免这种检查?

我已经检查过:https://github.com/Microsoft/TypeScript/wiki/FAQ#why-is-a-file-in-the-exclude-list-still-picked-up-by-the-compiler

但没有成功。

编辑:一种可能的解决方案是将--skipLibCheck添加到打字稿编译器中,但我不想放弃类型安全性

1 个答案:

答案 0 :(得分:1)

如果您从react-static-google-map导入任何内容,那么TypeScript会自动加载node_modules/react-static-google-map/package.json(即node_modules/react-static-google-map/typings/index.d.ts)中指定的键入文件,以便为您提供键入信息。键入文件错误:应该删除那些多余的declare关键字。考虑将PR提交给the repository。同时,最好的选择可能是将react-static-google-map软件包的修改版本添加到项目中,并使用本地路径将其注册到package.json依赖项中。