Angular.js之作用域scope'@','=','&'實例詳解
什么是scope
AngularJS 中,作用域是一個指向應(yīng)用模型的對象,它是表達(dá)式的執(zhí)行環(huán)境。作用域有層次結(jié)構(gòu),這個層次和相應(yīng)的 DOM 幾乎是一樣的。作用域能監(jiān)控表達(dá)式和傳遞事件。
在 HTML 代碼中,一旦一個 ng-app 指令被定義,那么一個作用域就產(chǎn)生了,由 ng-app 所生成的作用域比較特殊,它是一個根作用域($rootScope),它是其他所有$Scope 的最頂層。
除了用 ng-app 指令可以產(chǎn)生一個作用域之外,其他的指令如 ng-controller,ng-repeat 等都會產(chǎn)生一個或者多個作用域。此外,還可以通過 AngularJS 提供的創(chuàng)建作用域的工廠方法來創(chuàng)建一個作用域。這些作用域都擁有自己的繼承上下文,并且根作用域都為$rootScope。
在生成一個作用域之后,在編寫 AngularJS 代碼時,$scope 對象就代表了這個作用域的數(shù)據(jù)實體,我們可以在$scope 內(nèi)定義各種數(shù)據(jù)類型,之后可以直接在 HTML 中以 {{變量名}} 方式來讓 HTML 訪問到這個變量。
下面通過實例代碼給大家介紹angular.js之作用域scope'@','=','&'
<!doctype html> <html ng-app='myApp'> <head> </head> <body> <script src="http://cdn.bootcss.com/angular.js/1.4.6/angular.js"></script> <script src="https://cdn.bootcss.com/jquery/1.8.3/jquery.js"></script> <div ng-controller="listCtrl" ng-app="myApp"> <input type="text" ng-model="color"> <!-- <span kid hd-color="color"></span> --> <!--@是單項數(shù)據(jù)綁定,hd-color="{{color}}"作用域隔離,在view中是以模板“{{}}”的形式;=雙向綁定,hd-color="color",在view中直接以屬性的形式出現(xiàn)--> <div kid color="callback()"></div> </div> <script type="text/javascript"> var myApp=angular.module('myApp',[]); myApp.controller('listCtrl',function($scope){ $scope.color="red"; $scope.callback=function(){ return 'a web developer !'; } }); myApp.directive('kid',function(){ return { restrict:'AE', //template:'<div style="color:{{color}}">@符號的學(xué)習(xí)</div>' , template:'<h1>{{color()}}</h1>', scope:{ /*color:"=hdColor"*//* "@hdColor" */color:'&'} //通過&屬性名來調(diào)用控制器的函數(shù) } }); </script> </div> </body> </html>
以上所述是小編給大家介紹的Angular.js之作用域scope'@','=','&'實例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Angular 2.x學(xué)習(xí)教程之結(jié)構(gòu)指令詳解
結(jié)構(gòu)指令通過添加和刪除 DOM 元素來更改 DOM 布局。Angular 中兩個常見的結(jié)構(gòu)指令是 *ngIf 和 *ngFor,下面這篇文章主要給大家介紹了關(guān)于Angular 2.x結(jié)構(gòu)指令的相關(guān)資料,需要的朋友可以參考下。2017-05-05AngularJS 基礎(chǔ)ng-class-even指令用法
本文主要介紹AngularJS ng-class-even 指令,這里整理了ng-class-even基礎(chǔ)知識資料,并附實例代碼和效果圖,學(xué)習(xí)AngularJS指令的朋友可以看下2016-08-08Angular4學(xué)習(xí)筆記之準(zhǔn)備和環(huán)境搭建項目
這篇文章主要介紹了Angular4學(xué)習(xí)筆記之準(zhǔn)備和環(huán)境搭建項目,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08AngularJS基礎(chǔ) ng-model-options 指令簡單示例
本文主要介紹AngularJS ng-model-options 指令,這里對ng-model-options指令的基本資料進(jìn)行整理,有需要的小伙伴可以參考下2016-08-08