Wakanda callMethod同步模式

时间:2016-08-04 02:09:16

标签: wakanda

我正在尝试从服务器上执行的方法中使用callMethod()。

在这种情况下,我应该能够以同步模式调用它。但是,通过反复试验,我发现在这种情况下(即在服务器上),该方法需要三个参数,而不是文档中提到的两个参数。

需要

  • 第一个参数是字符串
  • 第二个参数是数组
  • 第三个参数是一个对象

我已经尝试了很多这些参数的组合,但似乎没有任何效果。同时,只要参数的形式正确,Wakanda就不会抛出错误。

任何想法都会受到欢迎。

TIA

2 个答案:

答案 0 :(得分:1)

假设我们有两个变量,一个包含dataClass的名称,另一个包含dataClass方法的名称:

var myDataClass = "User";
var myMethod = "addUser";

使用dataClass'用户'并调用方法' addUser'你可以这样做:

var currentClass = ds.dataClasses[myDataClass];
currentClass[myMethod]()

答案 1 :(得分:0)

方法callMethod()是一个clientSide方法,它应该用于prototyper Js文件。 尝试在button.click事件中使用它:

    button1.click = function button1_click (event)
{
    ds.User.callMethod({method:"method1", onSuccess:myFunction, onError:failure});

        function myFunction(){
            return true;
        }
        function failure(){
            return false;
        }
};

要在同步模式下调用serverSide js File中的方法,您只需以这种方式进行调用:

var test = ds.User.method1();