所以我有一個Module對象,並且我有使用以下從模塊繼承AdvModule對象:如何以json字符串的形式將對象保存到數據庫並稍後重新加載?
function object(o) {
function F() { }
F.prototype = o;
return new F();
}
function inheritPrototype(subtype, supertype) {
var prototype = object(supertype.prototype);
prototype.constructor = subtype;
subtype.prototype = prototype;
}
inheritPrototype(AdvModule, Module);
模塊有一個名爲「設置」一個對象變量,它包含的東西,如X,Y,高度,寬度等。目前我將這些設置保存爲json格式的數據庫。然後,刷新頁面時,將從數據庫中提取這些設置以重新創建該模塊。
但是現在我也有了AdvModule,並且當前沒有設置中的任何東西表明它應該是什麼樣的對象。我知道我可以分配一個字符串值,並在switch語句中使用它來決定使用這些設置構建哪些對象,但是我希望避免switch語句,因爲從Module繼承的對象數是易失性的,不希望其他開發者不得不進入並不斷改變switch語句。我希望設置知道要構建的對象。
我已經嘗試添加另一個值'設置',即對象的名稱:即 - > {類型:AdvModule}和我使用這個時加載像 - > item = new settings.type();這似乎工作。 但是,當我去保存到我的數據庫JSON.Stringify似乎拋出或忽略它。
任何幫助/建議將不勝感激。感謝
請您用一兩句話總結一下這個問題。您在儲存時遇到問題?加載?在客戶端上使用JSON設置?很難說。故事太長了。 –