You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ionic3中LocationAccuracy报错Object(...) is not a function的解决方法

解决Ionic 3中LocationAccuracy插件的TypeError: Object(...) is not a function错误

我一眼就看穿问题所在了——你在Ionic 3项目里用了适配Ionic 4+的@ionic-native/location-accuracy模块导入方式,版本不兼容才抛出了这个类型错误。下面是具体的修复步骤:

步骤1:卸载当前不兼容的npm包

先把你现在装的高版本@ionic-native/location-accuracy卸载掉,它是给Ionic 4+准备的:

npm uninstall @ionic-native/location-accuracy

步骤2:安装Ionic 3兼容的版本

Ionic 3对应的@ionic-native包是4.x版本(5.x及以上只支持Ionic 4+),执行以下命令安装适配版本:

npm install @ionic-native/location-accuracy@4

步骤3:修正导入路径

把所有文件(app.module.ts和你的顶层组件)里的导入语句改掉,去掉末尾的/ngx:
原来的错误导入:

import { LocationAccuracy } from '@ionic-native/location-accuracy/ngx';

改成:

import { LocationAccuracy } from '@ionic-native/location-accuracy';

步骤4:重新构建项目

修改完成后,重启你的开发服务或者重新构建项目:

ionic serve
# 或者针对真机构建
ionic cordova build android
# 或
ionic cordova build ios

补充说明

Ionic 3基于Angular 5/6,而带/ngx后缀的@ionic-native模块是为Angular 7+(对应Ionic 4+)设计的,两者的模块结构和注入方式完全不同,这就是你遇到Object(...) is not a function错误的核心原因。插件本身cordova-plugin-request-location-accuracy是没问题的,问题出在Ionic Native包装器的版本和导入路径上。

内容的提问来源于stack exchange,提问作者sembilanlangit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:23:05