使用react-google-maps遇Cannot find namespace 'google'错误求助
解决react-google-maps中"Cannot find namespace 'google'"的TypeScript错误
我之前也碰到过这个问题!其实就是TypeScript没识别到谷歌地图的全局类型定义,按下面几步来就能解决:
首先安装谷歌地图的TypeScript类型包
打开终端运行对应的命令:# npm 命令 npm install @types/googlemaps --save-dev # yarn 命令 yarn add @types/googlemaps --dev配置TypeScript识别该类型(两种方式选其一即可)
- 全局配置:打开项目根目录的
tsconfig.json,在compilerOptions的types数组中加入"googlemaps",示例配置如下:
{ "compilerOptions": { // 你的其他原有配置... "types": ["googlemaps"] } }- 局部声明:在使用
react-google-maps的组件文件顶部,添加类型引用声明:
/// <reference types="@types/googlemaps" />- 全局配置:打开项目根目录的
最后确认谷歌地图脚本已正确引入
在项目public/index.html的<head>或<body>末尾,加入谷歌地图的加载脚本(记得替换成你的API密钥):
小提示:如果后续遇到更多兼容性问题,其实可以考虑迁移到维护更活跃的@react-google-maps/api库,它对TypeScript的支持更友好,但上面的步骤已经能解决你当前的报错啦。
内容的提问来源于stack exchange,提问作者TheSoul
相关产品推荐
相关产品推荐

