未捕获的ReferenceError:没有为Ionic Push定义Ionic

时间:2015-11-24 11:57:53

标签: javascript angularjs cordova ionic-framework

我试图将Ionic.io Push添加到我的应用程序中,但它的投射离子没有定义

ReferenceError: Ionic is not defined
var push = new Ionic.Push({

除了这个未定义的错误,一切正常,我运行此命令更新lib但没有任何反应,捆绑版本是* Ionic,v1.1.0

ionic lib update

我的app.js

angular.module('TestApp', ['ionic','ionic.service.core',
                            'ionic.service.push',
                            'lavoApp.controllers',
                            'lavoApp.services','ngCordova'])
.run(function($ionicPlatform,$rootScope,$location,$timeout,$anchorScroll,$state,$ionicHistory,$cordovaPush) {

    $ionicPlatform.ready(function() {

        var push = new Ionic.Push({
          "debug": true
        });

        push.register(function(token) {
          console.log("Device token:",token.token);
        });

6 个答案:

答案 0 :(得分:15)

之后添加以下行
<script src="lib/ionic/ionic.bundle.js"></script>
index.html 文件中的

<script src="lib/ionic-platform-web-client/dist/ionic.io.bundle.js"></script>

答案 1 :(得分:6)

运行ionic io init之前发生此错误。如果您在浏览器中运行应用程序,则必须立即运行ionic config set dev_push true(否则您将获得“未定义PushNotification”)。整个推送通知设置过程描述为here

答案 2 :(得分:1)

setup steps之后,Ionic CLI自动写入我的index.html:

<script src="lib/ionic-platform-web-client/dist/ionic.io.bundle.min.js"></script>

但我不得不从以下地方手动检索源文件(ionic.io.bundle.min.js):

https://raw.githubusercontent.com/driftyco/ionic-platform-web-client/master/dist/ionic.io.bundle.min.js

并将其放在预期的目录中:

lib/ionic-platform-web-client/dist/

我还必须禁用然后从CLI重新启用限制推送:

ionic config set dev_push true

没有其他任何对我有用。祝你好运!

答案 3 :(得分:0)

您必须验证您的ionic-cli版本。它必须是最新的,或至少1.7.10。 检查enter link description here

答案 4 :(得分:0)

Ionic.io();应该在最新版本中推翻。但是,添加Ionic.io();在var push = Ionic.Push()之前解决了我的问题。即,在我添加了ionic-platform-web-client和push-plugin之后。

答案 5 :(得分:0)

这是一般依赖问题!这意味着您无法正确安装来自凉亭的Ionic依赖性。尝试运行“bower install”以再次安装所有依赖项。