我有一個「大」更改JavaScript對象值的JavaScript對象,它看起來有點像這樣:與自動生成的HTML表單
var userConfig = {
active: true,
subElement: { someProp: 156, otherProp: 'yaye' },
foo: ['bar', 'see', 'no']
// etc
}
我正在尋找的是某種框架,我通過變量(或變量的一部分)讀取所有屬性並創建可配置這些屬性的表單。所以一個複選框將被創建爲一個布爾值,一個字符串等文本框...
任何人都知道這樣一個圖書館?
更新:此刻通過打開JS和手動編輯變量(JS是本地存儲的greasemonkey腳本)來更改設置。幾乎所有的事情都是真的。
我不想編寫(很多)代碼來做雙向綁定,創建所有的UI小部件,並有一個乾淨的問題分離(MVVM,MVP,...),這是什麼Knockout/Backbone/.. (從教程中判斷)。
相反:
var userConfigUpdater = {
active: { description: "Activates or deactivates feature X", editType: "boolean"},
subElement: {
description: "subElement",
editType: "tabularItem",
someProp: {description: "foo", editType: "text"},
// more
}
}
createHtmlWidgets(userConfig, userConfigUpdater);
現在,用戶可以編輯表單元素,然後我們有類似: $("#okButton").click(function() {userConfig = getUpdatedValues();});
誠然,它看起來並不很漂亮,但它會得到工作完成得相當快/很容易。我猜測現在還沒有一些公共框架可以做到這樣的事情?
取決於UI的外觀,對不對?和選項。 'active:true'可能是一個複選框,但其他一些屬性如'active:{yes:1,no:0,notsure:-1}'可能對收音機有意義 – hunter