11
我怎麼能手工創建一個JavaScriptObject當我有這個類如何在GWT中手動創建JavaScriptObject?
public class Person extends JavaScriptObject{
protected Person(){}
public final native String FirstName()/*-{
return this.firstName;
}-*/;
public final native String LastName()/*-{
return this.lastName;
}-*/;
}
我問,因爲我有這個JavaScriptObject庇隆
public JsArray<Person> persons = JavaScriptObject.createArray().cast();
一個數組,我想這個充滿數組其中一些Person對象
Peson a = new Person();
a.setfirstName(textField1.getText());
a.setLastName(textField2.getText());
persons.push(a)
但我不知道如何手動創建這樣的對象。 我將從UI組件中獲取firstName和lastName的值,如textField。 請幫忙!
非常感謝。我有兩個問題:1)你和這個版本有什麼不同 - > Person a = Person.createObject()cast(); 2)我如何將值傳遞給人物?我應該創建setter方法嗎?但是在擴展JavaScriptObjects的類中不允許使用變量。所以我怎麼能將值lastName和firstName傳遞給對象? – Pero 2012-04-28 12:10:03
兩個createObject方法沒有區別,因爲它是JavascriptObject類的靜態方法。 – krishnakumarp 2012-04-28 12:24:23
對於第二個問題,您擴展JavascriptObject以訪問本機JSON對象。 setter將是本地調用,它將值賦給原生的Javascript變量。我認爲出於這個原因,他們已經提出了一個規則,即疊加類型中不允許使用成員變量。請閱讀https://developers.google.com/web-toolkit/doc/latest/DevGuideCodingBasicsOverlay瞭解更多詳情。 – krishnakumarp 2012-04-28 12:29:16