按照这里的例子:JSContext
我收到以下异常:
{TypeError: myCSharpObject.myFunc is not a function. (In 'myCSharpObject.myFunc()', 'myCSharpObject.myFunc' is undefined)}
我的代码如下:
JSContext _context;
_context = new JSContext();
var jsCallback = new MyJSExporter();
_context[(NSString)"myCSharpObject"] = JSValue.From(jsCallback, _context);
var result = _context.EvaluateScript("myCSharpObject.myFunc();");
协议定义为:
[Protocol]
interface IMyJSVisibleProtocol : IJSExport
{
[Export("myFunc")]
int MyFunc();
[Export("Arity2:With:")]
NSObject Arity2With(NSObject arg1, NSObject arg2);
}
class MyJSExporter : NSObject, IMyJSVisibleProtocol
{
public int MyFunc()
{
Console.WriteLine("Called!");
return 42;
}
public NSObject Arity2With(NSObject arg1, NSObject arg2)
{
Console.WriteLine("Arity 2 function called with " + arg1 + " " + arg2);
return (NSNumber)42;
}
}
异常处理程序为:
_context.ExceptionHandler = (context, exception) => {
// {TypeError: myCSharpObject.myFunc is not a function. (In 'myCSharpObject.myFunc()', 'myCSharpObject.myFunc' is undefined)}
};
慕工程0101907
至尊宝的传说
相关分类