未知的提供者:$ionicAppProvider。

8

当我尝试在app.js中设置GCM推送的API密钥时,出现了以下错误:

这是我使用的代码:

.config(['$ionicAppProvider', function($ionicAppProvider) {
    // Identify app
    $ionicAppProvider.identify({
        // The App ID for the server
        app_id: 'MY_APP_ID',
        // The API key all services will use for this app
        api_key: 'MY_API_KEY',
        //The GCM project number
        gcm_id: 'MY_GCM_PROJECT_NUMBER'
    });
  }])

1
重要提示:Ionic Beta 迁移(从 Alpha...)ionic-service-core 被替换成 ionic-platform-web-client - http://docs.ionic.io/docs/migration-guide - Aldracor
2个回答

7

看起来你还没有安装ionic-service-core模块并设置你的应用程序。你需要执行以下步骤:

1)安装Ionic Service Core。 在命令行中运行ionic add ionic-service-core以针对你的项目进行安装。

2)将此脚本标签添加到index.html中。

<script src="lib/ionic-service-core/ionic-core.js"></script>

3) 将ionic.service.core模块添加到您的app.js中,代码如下:

angular.module('starter', ['ionic',
  'ionic.service.core',
  'starter.controllers'])

2
我已经设置好了所有的内容,但错误仍然存在。 - Fernando Fabreti
@FernandoFabreti 你确定 lib/ionic-service-core/ionic-core.js 文件存在于正确的路径下吗? - jcaruso
@matdev,我自己没有使用过推送通知,但是你可能需要包含一堆其他的Ionic服务(类似于上面的ionic.service.core),才能使其正常工作。但我很高兴我能帮助你解决$ionicAppProvider错误。在Ionic网站上一定有一些文档、示例应用程序或教程可以供你参考。 - jcaruso
@FernandoFabreti 使用grunt代替手动将脚本添加到index.html中:将ionic-core.js路径添加到您的Gruntfile.js中,然后重新启动grunt watch。 - matdev
这对我不起作用。我已按上述所述实施,但仍然出现最初提到的错误。我认为这已被弃用,因为相同的信息存在于.io-config.json中。 - Rob Sawyer
显示剩余3条评论

0

可能是您在模块之前注入了Ionic核心服务。请尝试以下操作:

angular.module('starter', [
  'ionic',
  'ionic.service.core',
  'your.module'
]);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接