KnockoutJS 3.X API 第一章 簡介


本文純正翻譯自官網API文檔。其中包含一下個人理解。

官網API地址:http://knockoutjs.com/documentation/introduction.html

簡介

Knockout(簡稱KO)是一個JavaScript庫,可以幫助您用干凈的底層數據模型創建豐富的反應迅速顯示和編輯用戶界面。任何時候你有UI的部分是動態更新(例如,根據用戶的行為或者外部數據源的變化而變化),用KO可以幫助您實現起來更簡單。

KO主要功能

  • 優雅的依賴性跟蹤 -當數據模型變化時,自動更新你的UI。
  • 聲明綁定 -一個淺顯的方式來將UI的部分連接到你的數據模型。您可以輕松地構建利用任意嵌套綁定上下文來組成復雜的動態用戶界面。
  • 擴展 -使用短短的幾行代碼重用實現自定義行為作為。

KO的一些好處

  • 純JavaScript庫 -適用於任何服務器或客戶端技術
  • 可以在您現有的Web應用程序的頂部加入,而無需重大的架構改變
  • 緊湊型 –體積只有13KB
  • 適用於任何主流瀏覽器的(IE 6 +,火狐2 +,Chrome瀏覽器,Safari瀏覽器,其他)

      

熟悉Ruby on Rails的,ASP.NET MVC,或者其他MV *技術的開發人員可能會看到MVVM作為MVC與聲明語法實時的形式。在另一種意義上,你可以把KO的作為一般的方法,使用戶界面進行編輯JSON數據。

KO與Jquery的關系

每個人都喜歡的jQuery!jQuery是一個極好的低級別的方式來操縱網頁中的元素和事件處理程序。KO解決不同的問題。

只要你的用戶界面變得復雜而有一些重疊的行為,事情可能會變得棘手和維護成本變得昂貴,如果你只使用jQuery。舉一個例子:你顯示的項目清單,說明在該列表中的項目數,並希望當有超過500項的減少后僅啟用"添加"按鈕。jQuery的不具有基本的數據模型的一個概念,所以要得到你必須從元素的一個表中的數字或DIV具有一定CSS類的數量推斷它的項數。也許項目數顯示在某些SPAN標記中,當用戶添加一個項目你要記得更新SPAN的文字。你還必須記住禁用"添加"按鈕當元素的數量大於5之后。

KO來彌補這一切

相對之前提到的。如果使用KO則容易得多。比如JavaScript數組,然后用foreach綁定這個數組轉換成表或設置到DIV。每當數據模型變化時,用戶界面也會隨之變化(你不必弄清楚后台是如何注入新的TR)。讓UI的其余部分保持同步。例如,您可以聲明綁定到一個SPAN顯示項目數,代碼如下:

你不必編寫代碼來更新它; 它更新的數據源來自myItems數組的變化。同樣,為了使"添加"按鈕在項目數量小於5時啟用,只需要寫如下代碼:

總結

KO與jQuery並非競爭關系。KO只是提供互補,通過數據監控方式將數據模型鏈接到的UI。KO本身不依賴jQuery,但可以與jQuery同時使用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM