angular學習(三):ng渲染案例用法總結

來源:互聯網
上載者:User

前兩篇把基本的架子都搭好了,在單獨的Controller中處理獨立的業務,這時候渲染相應的頁面就要用到ng提供的相應組件和事件,下面我採用一一列舉的方式,將這些知識都總結於此:

ng-click:

              案例

 <button type="button"class="btn btn-primary" ng-click="showUploadView()">點擊上傳</button>

              說明

              聲明了一個btn的click事件,對應的controller中聲明function為 $scope.showUploadView = function(){}

ng-options:

              案例

 <select class="form-control" ng-options="m.id as m.name for m inselectobj" ng-model="curobj.Type"ng-change="changeTarget()"></select>

              說明:

              在對應的controller中定義了相應的selectobj為以下格式

 $scope.selectobj= [                            {                                          id :"webview",                                          name :"介紹頁"                            },                            {                                          id :"app",                                          name :"通告"                            }];

              通過ng-model來聲明該select預設下拉值

              通過ng-change來聲明該下拉框在改變值的時候觸發function邏輯

ng-change

              案例:

<input type="radio" name="clientType"id="inlineRadio1" value="ios" ng-model="sys_type"ng-change="changeRole()"> <label>IOS</label>

說明:

radio的選擇改變選中狀態用ng-change和ng-model將會得到最新選的值,用ng-click的話得到的值是改變之前的。

ng-repeat:

                案例:

                            <tr ng-repeat='repeat inlist'>                                                        <td>{{repeat.Index}}</td>                                                        <td>{{repeat.Title}}</td>                             </tr>

說明:

list為scope中的變數.而repeat in 這種方式來遍曆相應list中的對象,從而實現渲染每一個table

ng-src:

              案例:                    

                             <img ng-src="{{curimage}}" style="max-width:500px;"/>

              說明:

                            該code用ng-src綁定了一個scope對象,為img的對象

總結

              到了這裡最後說一下自己的理解吧。因為html中組件有相應的事件,加上NG之後又怎麼就升級了。這是因為controller中的對象值被更改,相應的頁面上的效果也就更改。也就是我們所謂的雙向繫結。通過這種方式不用通過js再次渲染DOM。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.