我编写了一个插件,并且具有相同方法的多个签名:
foo(param1, param2, callback)
foo(param1, param2)
foo(param1, param2): Promise<string>
所以我写道:
function foo(param1, param2, callback) : Promise<string>{
if(callback){
fooCallback(param1, param2, callback);
}else {
return fooPromise(param1, param2);
}
}
function fooCallback(param1, param2, callback){
return RNMyPlugin.foo(param1, param2, callback);
}
function fooPromise(param1, param2) : Promise<string>{
return RNMyPlugin.foo(param1, param2);
}
function foo(param1, param2){
foo(param1, param2, null);
}
local.foo = foo;
我的问题是:
我不知道如何检测用户是否调用了我的API foo(param1, param2)
或await foo(param1, param2)
在第一种情况下,用户要致电:
function foo(eventName, eventValues){/**/}
在第二种情况下:
function fooPromise(param1, param2) : Promise<string>{/**/}
有什么想法吗?
答案 0 :(得分:0)
你可以
function foo(eventName, eventValues){
return {
from: "function"
returnValue: /*return value here*/
}
}
function fooPromise(param1, param2){
return {
from: "promise"
returnValue: /*return value here*/
}
}