美文网首页ionic Ionic FrameworkIos@IONIC
Ionic2使用非ionic-native中的cordova插件

Ionic2使用非ionic-native中的cordova插件

作者: 待花谢花开 | 来源:发表于2017-06-15 09:01 被阅读184次

    熟悉ionic1和angular1的用户对于使用cordova都有一定的认识,但是在ionic2中官方给出的使用方法是从ionic-native这个npm包导入要使用的cordova插件。
    例如:
    使用ionic-native提供的AppVersion插件
    首先安装插件:
    ionic plugin add cordova-plugin-app-version
    然后通过以下代码即可获取到APP的版本信息

    import { AppVersion } from 'ionic-native';
    
    AppVersion.getAppName();
    AppVersion.getPackageName();
    AppVersion.getVersionCode();
    AppVersion.getVersionNumber();
    

    但是在ionic2中使用ionic-native之外的插件的时候,如果按照我们ionic1中使用插件的方法的话,比如我们在使用cordova-plugin-themeablebrowser 的时候使用到了

    cordova.ThemeableBrowser.open()
    

    会出现以下错误:

    ReferenceError: cordova is not defined
    

    再比如我们在使用极光推送jpush-phonegap-plugin插件的时候会使用到
    window.plugins.jPushPlugin.init();
    同样会出现以下错误:

    Property 'plugins' does not exist on type 'Window'.
    

    这是因为在ionic2中使用到了typescript的原因,所以我们需要在使用前先定义。
    使用cordova的时候需要在import之后@Component之前声明cordova

    declare let cordova:any;
    

    然后再使用cordova.ThemeableBrowser.open()就不会报错了。
    使用window.plugins的时候需要使用以下方法:

    (<any>window).plugins.jPushPlugin.init();
    

    相关文章

      网友评论

        本文标题:Ionic2使用非ionic-native中的cordova插件

        本文链接:https://www.haomeiwen.com/subject/faryqxtx.html