<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                Knockout是一個JavaScript庫,它可以幫助您使用干凈的底層數據模型創建豐富、響應迅速的顯示和編輯器用戶界面。每當您的UI部分動態更新時(例如,根據用戶的操作或外部數據源更改而更改),KO都可以幫助您更簡單、更易于維護地實現它。 **主要特色:** 優雅的依賴項跟蹤-每當數據模型更改時,自動更新UI的正確部分。 聲明性綁定—一種簡單而明顯的方式,用于將UI的各個部分連接到數據模型。您可以使用任意嵌套的綁定上下文輕松構建復雜的動態UI。 簡單可擴展-將自定義行為實現為新的聲明性綁定,以便在幾行代碼中輕松重用。 **其他好處:** 純JavaScript庫-適用于任何服務器或客戶端技術 可以添加到現有web應用程序之上,而無需進行重大的體系結構更改 壓縮-壓縮后約13kb 適用于任何主流瀏覽器(IE 6+、Firefox 2+、Chrome、Safari、Edge等) 全面的規范套件(開發的BDD樣式)意味著它的正確功能可以在新的瀏覽器和平臺上輕松驗證 ***** 熟悉RubyonRails、ASP.NETMVC或其他MV*技術的開發人員可能會將MVVM視為具有聲明性語法的實時形式的MVC。從另一個意義上講,您可以將KO視為一種制作用于編輯JSON數據的UI的通用方法…… ***** **KO打算與jQuery(或Prototype等)競爭還是與之合作?** 每個人都喜歡jQuery!它是我們過去不得不忍受的笨拙、不一致的DOM API的杰出替代品。jQuery是操縱網頁中的元素和事件處理程序的一種優秀的低級方法。KO解決了一個不同的問題。 一旦您的UI變得非常重要,并且有一些重疊的行為,如果您只使用jQuery,那么維護起來就會變得非常棘手和昂貴。考慮一個例子:您正在顯示一個項目列表,列出該列表中的項目數量,并希望只有在少于5個項目時啟用一個“添加”按鈕。jQuery沒有底層數據模型的概念,因此要獲得項目的數量,必須從表中tr的數量或具有特定CSS類的div的數量中推斷出來。可能項目的數量顯示在某個范圍內,您必須記住在用戶添加項目時更新該范圍的文本。當TR數為5時,您還必須記住禁用“添加”按鈕。稍后,還要求您實現一個“刪除”按鈕,并且您必須確定在單擊該按鈕時要更改哪些DOM元素。 ***** knockout有什么不同? 有了KO就容易多了。它可以讓您在復雜度上進行擴展,而不必擔心引入不一致性。只需將項目表示為JavaScript數組,然后使用foreach綁定將該數組轉換為一個表或一組div。每當陣列更改時,UI都會更改以匹配(您不必知道如何注入新的TR或在何處注入它們)。UI的其余部分保持同步。例如,可以聲明性地綁定范圍以顯示項目數,如下所示: `There are <span data-bind=``"text: myItems().length"``></span> items` 就這樣!您不必編寫代碼來更新它;當myItems數組更改時,它會自動更新。同樣,要根據項目數啟用或禁用“添加”按鈕,只需編寫: `<button data-bind="enable: myItems().length < 5">Add</button> ` 稍后,當您被要求實現“刪除”功能時,您不必弄清楚它必須與UI的哪些部分進行交互;您只需讓它改變底層數據模型。 總而言之:KO不能與jQuery或類似的低級DOM API競爭。KO提供了一種將數據模型鏈接到UI的補充性高級方法。KO本身并不依賴于jQuery,但您當然可以同時使用jQuery,而且如果您想要動畫轉換之類的東西,這通常非常有用。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看