1. 程式人生 > >AngularJS控制器

AngularJS控制器

控制器(controllers)可以控制應用程式資料

控制器是普通的js物件

使用ng-controller指令定義一個控制器

<div ng-app="myApp" ng-controller="myCtrl">
    First name: <input ng-model="firstname">
    Last name: <input ng-model="lastname">
    <br>
    Full name: {{fullname}}
</div>

<script>
    var app = angular.module('myApp', []);
    app.controller('<span style="font-family: Arial, Helvetica, sans-serif;">myCtrl</span>', function ($scope) {
        $scope.firstname = "John";
        $scope.lastname = "Doe";
        $scope.fullname = $scope.firstname + $scope.lastname;
    })
</script>

上述例子解釋:

ng-app定義一個應用程式myApp

ng-controller定義一個控制器myCtrl

myCtrl本質上是一個js函式

AngularJS利用$scope物件呼叫myCtrl這個函式

$scope是整個應用程式所有變數與函式的'擁有者'

控制器在scope物件中建立了三個屬性,firstname, lastname, fullname

ng-model將input繫結到控制器三個屬性變數

控制器方法:

控制器物件不僅可以建立屬性,還可以建立函式,如:

<div ng-app="myApp" ng-controller="ctrl">
    First name: <input ng-model="firstname">
    Last name: <input ng-model="lastname">
    <br>
    Full name: {{fullname()}}
</div>

<script>
    var app = angular.module('myApp', []);
    app.controller('ctrl', function ($scope) {
        $scope.firstname = "John";
        $scope.lastname = "Doe";
        $scope.fullname = function() {
            return $scope.firstname + $scope.lastname;
        }
    })
</script>


相關推薦

AngularJS 控制器中處理DOM事件

# AngularJS 控制器中處理DOM事件 標籤(空格分隔): AngularJS — AngularJS應用中的DOM事件可以在控制器中完成。AJ框架為我們提供了事件繫結指令,只需要在原生的avascript事件名稱前增加ng-字首,如 ng-click,ng-keyup…。下面是一個例子

AngularJS控制器controller如何通訊?

本文轉自https://segmentfault.com/a/1190000000639592點選開啟連結 關於控制器如何通訊的問題,是不少剛接觸angulr的同學想知道的。總的來說,angular控制器通訊的方式有三種: 1,利用作用域繼承的方式。即子控制器繼承父控制器中的內容 2,基於事

angularJS控制器ng-controller裡獲取不到input標籤裡ng-model的值

所遇問題: html:ng-model="searchKey" <div id="app-list" class="hidden" ng-controller="IndexController"> <section class="media c

AngularJS控制器

控制器(controllers)可以控制應用程式資料 控制器是普通的js物件 使用ng-controller指令定義一個控制器 <div ng-app="myApp" ng-controller="myCtrl"> First name: <in

AngularJS入門 AngularJS控制器 AngularJS常見內建指令

每一個AngularJS應用,都有唯一的一個全域性作用域範圍,也稱為根作用域,Angular中其他的作用域都 是這個根作用域的後代/子作用域。 AngularJS的根作用域/全域性作用域:$rootScope。 根作用域使用時,通過注入的方式新增到控制器處理函式的入參中。 $watch:   $scope物

AngularJS控制器controller之間通訊

關於控制器如何通訊的問題,總的來說,angular控制器通訊的方式有三種:  1、利用作用域繼承的方式。即子控制器繼承父控制器中的內容; 2、基於事件的方式。即$on,$emit,$boardcast這三種方式; 3、angular服務的方式。寫一個服務的單例然後通過注入來使用。 一、利用作用域的

聲明了一個模塊和一個控制器AngularJS的處理過程

say 作用域 col 如何 負責 log cto 引用傳遞 nbsp 例如下面這段代碼。這是一個簡單的應用,聲明了一個模塊和一個控制器: angular.module(‘myApp‘, []) .factory(‘greeter‘, function() {

Angularjs實現控制器之間通訊方式示例

利用angularjs開發專案中,控制器之間的通訊,比如引數的傳遞,資料的傳遞,都是比較常見的。控制器之間的通訊,顯得尤為重要。常見的方式有如下兩種:一、angular服務的方式;二、基於事件廣播的方式;另外,還有基於作用域繼承的方式。下面先說一下前兩種方式: 一、基於angular服務的方式: 在angu

angularjs 巢狀控制器,子控制器訪問父控制器

<script src="angular-1.3.0.js"></script> <div ng-controller="OparentController as pCtrl"> <p>直接訪問父控制器的值:{{user}}</p>

AngularJS(02)---控制器

接著上一篇的例子,我們來了解一下控制器 AngularJS控制器 AngularJS applications通過控制器進行控制。 ng-controller指令定義了一個application的控制器。 一個控制器就是一個JavaScript物件,它可以通過標準的JavaScrip

AngularJS自學之路(三)——控制器和表示式

控制器 控制器在AngularJS中的作用是增強檢視。 AngularJS中的控制器是一個函式,用來向檢視的作用域中新增額外的功能。我們用它來給作用域物件設定初始狀態,並新增自定義行為。 當我們在頁面上建立一個新的控制器時,AngularJS會生成並傳遞一

深究AngularJS——AngularJS中的Controller(控制器)

先看個示例 <div ng-app="myApp" ng-controller="myCtrl"> <!-- 在該控制器內儲存著如下兩個Model裡的資料

AngularJS】如果你修改了檢視,模型和控制器也會相應更新

如果你修改了檢視,模型和控制器也會相應更新 <!DOCTYPE html> <html> <head> <meta charset="utf-8"&g

AngularJs-指令和控制器互動

var myModule = angular.module('MyController',[]); myModule.controller('MyCtrl',function($scope){ $scope.loadData = function(){ console.log("載入

angularjs中如何實現控制器和指令之間互動

如果我們具有下面的DOM結構: <div ng-controller="MyCtrl"> <loader>滑動載入</loader> </div>同時我們的控制器具有如下的簽名: var myM

angularjs 1.x自定義指令之控制器與指令間的通訊

一、在指令中呼叫控制器裡定義的方法 //html <div ng-controller="MyCtrl"> <loader howToLoad="loadData

AngularJS入門例項2——控制器的使用

<!doctype html> <html> <head> <meta charset="utf-8"> <script src="http://apps.bdimg.com/libs/angular.js/1.3.9/

angularjs指令-控制器

1.指令-控制器.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>angularjs指令<

Angularjs演示Service功能

lar 控制器 com 函數 splay click log ica multipl 在angularjs中,我們可以自定義自己的service。可以說得是自定義的方法,函數。下面我們一步一步來演示吧:首先為angularjs定義一個app: var demoAp

第一個AngularJS Demo(購物車)

mod 購物 set sco tle ng-model -m -c 刪除 <!DOCTYPE html><html><head>   <meta charset="utf-8" />   <script sr