AngularJS – ngModelController詳解

來源:互聯網
上載者:User

標籤:lock   值傳遞   parse   事件處理   應該   div   自己   dir   shadow   

    • ngModelController方法
      • $render();

      當視圖需要更新的時候會被調用。使用ng-model的指令應該自行實現這個方法。

      • $isEmpty(value);

      該方法用於判斷輸入值是否為空白。
      例如,使用ngModelController的指令需要判斷其中是否有輸入值的時候會使用該方法。該方法可用來判斷值是否為undefined,‘‘,null或者NaN。
      你可以根據自己的需要重載該方法。

      • $setValidity(validationErrorKey, isValid);

      該方法用於改變驗證狀態,以及在控制變化的驗證標準時通知表格。
      這個方法應該由一個驗證器來調用。例如,一個解析器或者格式化函數。

      • $setPristine();

      該方法用於設定控制到原始狀態。
      該方法可以移除‘ng-dirty‘類並將控制恢複到原始狀態(‘ng-pristine‘類)。

      • $setViewValue(value, trigger)方法

        該方法用來更新視圖值。這個方法應該在一個視圖值發生變化時被調用,一般來說是在一個DOM事件處理函數中。例如,input和select指令就調用了這個函數。
        這個方法將會更新$viewValue屬性,然後在$pasers中通將這個值傳遞給每一個函數,其中包括了驗證器。這個值從$parsers輸出後,將會被用於$modelValue以及ng-model屬性中的運算式。
        最後,所有位於$viewChangeListeners列表中註冊的監聽器將會被調用。 

      • $cancelUpdate();

      該方法用於取消一次更新並重設輸入元素的值以防止$viewCalue發生更新,它會由一個pending debounced事件引發或者是因為input輸入框要等待一些未來的事件。 

       

AngularJS – ngModelController詳解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.