2017-07-10 77 views
0

我試圖測試我的離子應用程序,但每次我服務它,我得到一個空白屏幕和導航欄。我收到一個錯誤,看起來像這個花了無數小時看,但沒有。科爾多瓦插件Apprate沒有定義。

`Uncaught ReferenceError: AppRate is not defined 
    at Object.setPreferences (ng-cordova.min.js:7) 
    at Array.<anonymous> (config.js:24) 
    at onPlatformReady (ionic.bundle.js:2496) 
    at onWindowLoad (ionic.bundle.js:2477)` 

     angular.module("ngCordova.plugins.appRate", []).provider("$cordovaAppRate", [function() { 
     this.setPreferences = function(e) { 
      e && angular.isObject(e) && (AppRate.preferences.useLanguage = e.language || null, 
      AppRate.preferences.displayAppName = e.appName || "", 
      AppRate.preferences.promptAgainForEachNewVersion = e.promptForNewVersion || !0, 
      AppRate.preferences.openStoreInApp = e.openStoreInApp || !1, 
      AppRate.preferences.usesUntilPrompt = e.usesUntilPrompt || 3, 
      AppRate.preferences.useCustomRateDialog = e.useCustomRateDialog || !1, 
      AppRate.preferences.storeAppURL.ios = e.iosURL || null, 
      AppRate.preferences.storeAppURL.android = e.androidURL || null, 
      AppRate.preferences.storeAppURL.blackberry = e.blackberryURL || null, 
      AppRate.preferences.storeAppURL.windows8 = e.windowsURL || null) 
     } 

這是我每次通過離子CLI爲我的應用程序提供的錯誤。我試過更新插件,但沒有什麼請幫忙。這是我的離子信息:

global packages: 

    @ionic/cli-utils : 1.4.0 
    Cordova CLI  : 7.0.1 
    Gulp CLI   : not installed globally 
    Ionic CLI  : 3.4.0 

local packages: 

    @ionic/cli-plugin-cordova : 1.4.0 
    @ionic/cli-plugin-gulp : 1.0.1 
    @ionic/cli-plugin-ionic1 : 2.0.0 
    Cordova Platforms   : android 5.1.1 ios 4.4.0 
    Ionic Framework   : ionic1 1.3.1 

System: 

    Node  : v7.4.0 
    OS   : macOS Sierra 
    Xcode  : Xcode 8.3.3 Build version 8E3004b 
    ios-deploy : 1.9.1 
    ios-sim : 6.0.0 
    npm  : 4.0.5 
+0

你在瀏覽器中運行它嗎? – robbannn

+0

是的,但我也把它放在測試飛行,並試圖在我的手機上測試它,仍然沒有出現。但是navbar @robbannn – NazNeutron

回答

0

在cordova onDeviceReady事件觸發後,確保所有對插件的調用都發生。 對於Ionic,您應該將代碼移動到$ ionicPlatform.ready()回調中。

$ionicPlatform.ready(function() { 
    if(window.cordova){ 
    AppRate.preferences.displayName = "MyApp" 
    AppRate.preferences.storeAppURL = { 
     ios: '<my_app_id>', 
     android: 'market://details?id=my_app_id' 
    }; 
    } 
}); 
相關問題