国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Angular企業級開發——MVC之控制器詳解

2024-05-06 15:11:06
字體:
來源:轉載
供稿:網友

1.MVC中的控制器

AngularJS的控制器主要為了把模型和視圖連接在一起。大多數業務邏輯操作都會放在視圖對應的控制器中。當然如果我們能夠把業務邏輯放到后端的REST服務中,就可以開發輕量級AngularJS應用。

涉及到多個控制器中使用的業務邏輯,需要放到一個公共的服務中,然后把改服務注入使用到該業務邏輯的控制器中。

2.理解控制器

在AngularJS的控制器中,構造函數會有$scope參數。當一個控制器通過ng-controller指令連接到DOM上,Angular將實例化一個新的控制器對象,然后調用指定的控制器的構造函數。一個新的子作用范圍(scope)將被創建,并作為一種可注入的參數傳遞給控制器​​的構造函數為$scope

如果控制器使用controller as語法附加到DOM上,那么控制器實例將被分配給新的$scope范圍。并且多了一個和as同名的屬性,然后把自己指向這個屬性,就方便我們訪問了。

3.控制器的作用

3.1 在控制器中初始化模型(添加屬性)

創建控制器并將它附加到DOM元素之后,AngularJS會創建一個子作用域。子作用域保存著對應控制器的數據模型。子作用域可以通過$scope來獲取。

<!DOCTYPE html><html lang="en" ng-app="myApp"><head>  <meta charset="UTF-8">  <title>AngularJS Controller Demo</title>  <script type="text/javascript" src="angular.min.js">  </script>  <script src="app.js" charset="utf-8"></script></head><body ng-controller="MainController">  <p>{{username}}</p>  <p>{{age}}</p></body></html>
(function () {  'use strict';  angular.module("myApp", [])    .controller('MainController', ['$scope', function ($scope) {      $scope.username="leeli";      $scope.age=28;    }]);})();

3.2 在控制器中附件行為(添加事件或方法)

附加行為的方式是把方法或事件添加到$scope對象上,以便在控制器對應的視圖中使用到改方法。也有很多方法是處理業務的,也是附加到$scope對象上。
ng-click對應的事件方法在controller里面定義為addItem,所以在視圖上我們可以使用addItem方法。

視圖上的ng-clickng-modelng-repeat都是AngularJS的內置指令,后續博客會詳細介紹。

4.控制器作用域

因為控制器是附加到DOM元素上,所以存在著一個視圖,有多個控制器。控制器之間可以是并列的,也可以是嵌套的形式存在。

4.1 視圖中控制器并列

各個控制器從附加DOM元素節點開始,到節點對應閉合標簽結束的地方創建了一個子控制域,單個控制器里面的

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 玉树县| 靖远县| 蒙城县| 达孜县| 武平县| 汕尾市| 普陀区| 台东市| 延庆县| 湖北省| 沁源县| 临沧市| 涟源市| 呼和浩特市| 五大连池市| 梁平县| 日喀则市| 离岛区| 南和县| 肇州县| 琼结县| 农安县| 天峻县| 永仁县| 新宾| 津南区| 肇庆市| 湄潭县| 湘潭县| 靖远县| 苍梧县| 大宁县| 昆山市| 栾川县| 黄石市| 资源县| 邵武市| 广宗县| 稻城县| 澳门| 克拉玛依市|