【问题标题】:react-native-maps - AIRGoogleMapManager.pointForCoordinate was called with 2 arguments but expects 3 argumentsreact-native-maps - AIRGoogleMapManager.pointForCoordinate 使用 2 个参数调用,但需要 3 个参数
【发布时间】:2018-05-24 12:57:34
【问题描述】:
按照安装说明中的说明设置 react-native-maps。除了 MapView.pointForCoordinate() 方法外,一切都按预期工作。
每当我使用该方法时,我都会收到以下错误:
AIRGoogleMapManager.pointForCoordinate 使用 2 个参数调用,但需要 3 个参数。如果您自己没有更改此方法,这通常意味着您的本机代码和 JavaScript 代码版本不同步。更新两者应该可以消除此错误。
使用的版本:
“反应原生”:“0.54.4”,
"react-native-maps": "0.21.0"
在 iOS 模拟器上测试。
我尝试从头开始重建项目。
有什么想法吗?
【问题讨论】:
标签:
react-native
react-native-ios
react-native-maps
【解决方案1】:
react-native-maps sources 内部有一个错误(链接到有问题的行)。应该是在那一行:
this._runCommand('coordinateForPoint', [point, (err, res) => {
if (err) {
reject(err)
} else {
resolve(res)
}
}])
所以,我推荐你:
- fork 这个库
- 修复该行
- 提交更改并将更改推送到您在 github 上的存储库
- 运行
npm i github:{YOUR_GITHUB_USERNAME}/react-native-maps
- 运行
react-native start --reset-cache 以确保它不会运行缓存文件
- 再试一次
pointForCoordinate
顺便说一句,coordinateForPointmethod 也有同样的问题,修复步骤也是一样的。
注意:变化与pointForCoordinate 方法相同,只是换了一行。