我有这两个类:
public class JavaScriptObject extends ScriptableObject {
private int someInt;
public int jsGet_someInt()
{
return someInt;
}
public void jsSet_someInt(int value)
{
someInt = value;
}
@Override
public String getClassName()
{
return "JSO";
}
}
public class FunctionPool {
public JavaScriptObject getJso() {
return new JavaScriptObject();
}
}
我有这个脚本:
var jso = fp.getJso();
jso.someInt += 1;
var i = jso.someInt;
第二行和第三行不起作用。问题是 jso 对象不知道任何 setter 或 getter,因此 getter 返回 undefined 并且 setter 不做任何事情。如果我使用 ScriptableObject.putProperty 创建 jso 对象,它们也不起作用。只有当我在这样的脚本中创建它时它才有效:
var jso = new JSO();
那么关于如何使其工作的任何想法?