2017-04-07 76 views
1

因此我将Angular2与Ionic2一起用于我的移动应用程序。我的应用程序正在编译和运行完美,直到我添加一个新的模块到应用程序的导航谷歌地图。我正在使用phonegap-launch-navigator来做到这一点。我导入模块的类是我的Maps类,而类的结构如下所示;无法解析Angular 2中的MapsPage :(?,NavController,LaunchNavigator,.......)的所有参数

import { LaunchNavigator, LaunchNavigatorOptions} from 'ionic-native'; 
import { Component, NgZone } from "@angular/core"; 
import { NavController, Platform, NavParams } from 'ionic-angular'; 
import {GoogleMap, GoogleMapsEvent, GoogleMapsLatLng, GoogleMapsMarkerOptions, CameraPosition } from 'ionic-native'; 
import { Observable } from 'rxjs/Observable'; 
import 'rxjs/add/operator/map'; 
import { Geolocation } from 'ionic-native'; 
import { Injectable,forwardRef,Inject } from "@angular/core"; 


@Component({ 
    selector: 'maps-page', 
    templateUrl: 'maps.html', 
}) 

export class MapsPage { 

    private map: GoogleMap; 
    destination:string; 
    start:string; 

    constructor(public LaunchNavigatorOptions: LaunchNavigatorOptions, 
    private _navController: NavController, 
    private LaunchNavigator:LaunchNavigator, 
    private platform: Platform, 
    public navCtrl: NavController, 
    public navParams: NavParams, 
    private _zone: NgZone) { 
    this.start = ""; 
    this.destination = "Westminster, London, UK"; 
    this.platform.ready().then(() => this.onPlatformReady()); 
    } 

和我的package.json看起来像这样

{ 
    "name": "ionic-hello-world", 
    "author": "Ionic Framework", 
    "homepage": "http://ionicframework.com/", 
    "private": true, 
    "scripts": { 
    "clean": "ionic-app-scripts clean", 
    "build": "ionic-app-scripts build", 
    "ionic:build": "ionic-app-scripts build", 
    "ionic:serve": "ionic-app-scripts serve", 
    "test": "mocha" 
    }, 
    "dependencies": { 
    "@angular/common": "2.2.1", 
    "@angular/compiler": "2.2.1", 
    "@angular/compiler-cli": "2.2.1", 
    "@angular/core": "2.2.1", 
    "@angular/forms": "2.2.1", 
    "@angular/http": "2.2.1", 
    "@angular/platform-browser": "2.2.1", 
    "@angular/platform-browser-dynamic": "2.2.1", 
    "@angular/platform-server": "2.2.1", 
    "@ionic/cloud-angular": "^0.11.0", 
    "@ionic/storage": "1.1.7", 
    "angular2-jwt": "^0.1.28", 
    "bootstrap": "^3.3.7", 
    "ionic-angular": "2.0.0-rc.4", 
    "ionic-native": "2.2.11", 
    "ionicons": "3.0.0", 
    "jquery": "^3.1.1", 
    "moment": "^2.17.1", 
    "ng2-translate": "^5.0.0", 
    "rxjs": "5.0.0-beta.12", 
    "zone.js": "0.6.26" 
    }, 
    "devDependencies": { 
    "@ionic/app-scripts": "^1.0.0", 
    "typescript": "2.0.9" 
    }, 
    "cordovaPlugins": [ 
    "cordova-plugin-whitelist", 
    "cordova-plugin-console", 
    "cordova-plugin-statusbar", 
    "cordova-plugin-device", 
    "cordova-plugin-splashscreen", 
    "ionic-plugin-keyboard" 
    ], 
    "cordovaPlatforms": [ 
    "ios", 
    { 
     "platform": "ios", 
     "version": "", 
     "locator": "ios" 
    } 
    ], 
    "description": "myApp: An Ionic project" 
} 

导入这两个模块并把它们在构造后,我无法甚至开始我的应用程序,它提供了一个运行时错误说法“无法解析MapsPage(?,NavController,LaunchNavigator,Platform,NavController,NavParams,NgZone)的所有参数。我认为问题出在LaunchNavigatorOptions上,因为当我特意发表一个意见时,应用程序可以在没有任何问题有什么,我可以做,使其工作?任何帮助表示赞赏。谢谢!

+0

你能告诉你'package.json'文件? – Sampath

+0

@Sampath,我编辑了我的帖子。你现在可以看到它。谢谢! – BleachedAxe

回答

0

看起来像你正在使用ionic-native v2.2.11

在这个版本中,插件是全局和静态的,不应该注入到构造函数中。 刚刚从你的构造函数删除

public LaunchNavigatorOptions: LaunchNavigatorOptions 

private LaunchNavigator:LaunchNavigator, 

检查docs升级到离子本地3.X

+0

如何在我的课程中使用LaunchNavigatorOptions和Launch Navigator? – BleachedAxe

+0

你需要使用它们的静态方法..'LaunchNavigator.function()'.. –

相关问题