【问题标题】:Ionic Native: Supplied parameters do not match any signature of call targetIonic Native:提供的参数与调用目标的任何签名都不匹配
【发布时间】:2017-06-15 18:43:47
【问题描述】:

我正在关注 Ionic-Native 对 Cordoava 的 InAppBrowse r 插件 (http://ionicframework.com/docs/v2/native/inappbrowser/) 的使用。唯一的问题是当我去构造 InAppBrowser 对象 (let browser = new InAppBrowser(url, '_system')) 时,我收到以下 TypeScript 错误:

提供的参数与调用目标的任何签名都不匹配。

这不是我第一次使用 Ionic 2 / Ionic-Native 遇到此 TypeScript 错误,我想知道是否需要以某种方式更新我的类型,或者 Ionic 提供的文档是否已过时。任何信息都会很有用。

【问题讨论】:

    标签: cordova ionic2 inappbrowser typescript-typings


    【解决方案1】:

    当函数中提供的参数数量与所需的参数数量不符时,会发生此错误。该文件似乎也有所不同。请尝试按如下方式包含 inappbrowser。猜猜这会奏效。

    import {InAppBrowser} from 'ionic-native';
    
    let browser = InAppBrowser.open(url,"_system");
    

    ionic 2.3.0 版更新

    添加 inAppBrowser 插件后,安装相同的 npm 类型

    npm install --save @ionic-native/in-app-browser
    

    并在你的 ts 文件中使用它。

    import { InAppBrowser } from '@ionic-native/in-app-browser';
    
    constructor(private inAppBrowser: InAppBrowser) { }
    ...
    const browser = this.inAppBrowser.create('https://ionic.io');
    

    【讨论】:

    • 你上面写的正是我所拥有的。另外,我的 url 变量适当地是一个字符串
    • 你的意思是你尝试调用InAppBrowser的“open”方法?但是在您的问题中,您创建了一个带有变量的 InAppBrowser 对象。
    【解决方案2】:

    cordova 插件代码存在问题,在 iOS 中它仍在安装旧代码,但在 Android 中它下载最新的。

    请使用 InAppBrowser.open(url,"_system", "location=yes") 进行 iOS 构建,对我来说它有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-09
      • 2017-04-28
      • 2017-08-24
      • 2017-02-25
      • 2017-07-26
      • 2018-03-31
      • 2017-05-08
      相关资源
      最近更新 更多