1

ポッドを使用する NativeScript にプラグインを実装しようとしています。ポッドには次のメソッドがあります。

// basic usage
[self.view makeToast:@"This is a piece of toast."];

// toast with a specific duration and position
[self.view makeToast:@"This is a piece of toast with a specific duration and position." 
            duration:3.0
            position:CSToastPositionTop];

基本的な使い方は次のようにうまくいきます:

frameModule.topmost().ios.controller.view.makeToast("sometext");

しかし、特定の期間と位置に対して複数のパラメーターを送信しようとすると

frameModule.topmost().ios.controller.view.makeToast(toastObject.text, 5.0, CSToastPositionTop);

コンソールでこの例外が発生します

実際の引数の数: "3"。予想: "1"。

複数のパラメーターを送信してネイティブ関数を呼び出すにはどうすればよいですか?

4

2 に答える 2

1

JS を介してネイティブ関数を実行するには、どのメソッドが公開されているかを確認する必要があります。

TNS_TYPESCRIPT_DECLARATIONS_PATH="${pwd}/typings" tns build ios

上記のコマンドは、利用可能なすべてのモジュールの .ts ファイルを含むフォルダーを生成します。このファイルには、JS で使用できる公開されたメソッドが含まれています。

私の場合、 Duration を設定するには、使用する必要がありましたCSToastManager.setDuration()

元の問題については、このリンクを参照してください https://github.com/NativeScript/NativeScript/issues/2653

于 2016-09-01T18:59:03.977 に答える
0

NativeScript iOS ランタイムは、ネイティブに存在するさまざまな引数順列に対して複数の JavaScript 関数を作成します。

構文が完璧ではないかもしれませんが、これはうまくいくと思います:

frameModule.topmost().ios.controller.view.makeToastWithDurationPosition(
  "This is a piece of toast...", 3, CSToastPositionTop);
于 2016-09-01T13:11:40.173 に答える