ViewModel是一個管理特定UI組件數據的類。 可以將其視為特定視圖的記錄容器。 它支持與UI組件的雙向數據綁定,只要用戶在視圖中更改數據,它具有最新的副本。 與模型不同,它不能包含代理,因此它不能直接從遠程服務器獲取數據。
我們來創建一個帶有虛擬數據的簡單ViewModel並將其綁定到一個組件。 請考慮以下示例。
在上面的例子中,我們創建了簡單的ViewModel類,名為MyApp.view.TestViewModel和Ext.app.ViewModel。別名配置用於給它一個簡短的名稱,以便我們可以在UI中使用這個簡短的名稱來查找它。數據配置用於提供樣本數據對象。在這里,我們提供了id和name屬性的簡單對象。 viewmodel類在使用viewmodel類型的viewModel配置的組件中引用。使用bind config將特定的UI配置值與ViewModel的數據綁定。在上面的例子中,組件的html屬性用"test"viewmodel數據對象的id和name屬性綁定。使用大括號來綁定特定屬性,如"{id}"或"{name}"。所以現在,上述組件將顯示"1 - Steve"。