JavaScript類庫
Knockout有如下4大重要概念:
◆ 聲明式綁定 (Declarative Bindings):使用簡明易讀的語法很容易地將模型(model)數據關聯到DOM元素上。
◆ UI界面自動刷新 (Automatic UI Refresh):當您的模型狀態(model state)改變時,您的UI界面將自動更新。
◆ 依賴跟蹤 (Dependency Tracking):為轉變和聯合數據,在你的模型數據之間隱式建立關係。
◆ 模板 (Templating):為您的模型數據快速編寫複雜的可嵌套的UI。
簡稱:KO
Knockout是一個以數據模型(data model)為基礎的能夠幫助你創建富文本,回響顯示和編輯用戶界面的JavaScript類庫。任何時候如果你的UI需要自動更新(比如:更新依賴於用戶的行為或者外部數據源的改變),KO能夠很簡單的幫你實現並且很容易維護。
重要特性:
◆ 優雅的依賴追蹤- 不管任何時候你的數據模型更新,都會自動更新相應的內容。
◆ 聲明式綁定- 淺顯易懂的方式將你的用戶界面指定部分關聯到你的數據模型上。
◆ 靈活全面的模板- 使用嵌套模板可以構建複雜的動態界面。
◆ 輕易可擴展- 幾行代碼就可以實現自定義行為作為新的聲明式綁定。
額外的好處:
◆ 純JavaScript類庫 – 兼容任何伺服器端和客戶端技術
◆ 可添加到Web程式最上部 – 不需要大的架構改變
◆ 簡潔的 – Gzip之前大約25kb
◆ 兼容任何主流瀏覽器 (IE 6+、Firefox 2+、Chrome、Safari、其它)
◆ Comprehensive suite of specifications (採用行為驅動開發) - 意味著在新的瀏覽器和平台上可以很容易通過驗證。