1

我正在尝试在 NativeScript 中实现一个使用 pod 的插件,并且 pod 具有以下方法。

// 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 回答