閱讀767 返回首頁    go 阿裏雲 go 技術社區[雲棲]


angularJS 獨立作用域

文章在我的GitHub zsj 裏的angularJS 01_常用指令和控製器 。
19_獨立作用域.html

可以使用一個語法:userName 就可以用了唄!用到獨立作用域,隻需要加
獨立作用域 scope: 你是你,我是我,看自己的文檔 scope的綁定策略 下麵三個符號是給它用的。把作用域上值作用在指令上!
@ 關聯作用域到指令
= 與
&
20_scope綁定策略.html
基礎的寫好!angular.module('myApp',[])

自定義屬性 xiao-xue content="{{ ctrlContent}}" 就是一個指令。前麵的是xiaoxue 的屬性。這個屬性名隨便叫。 然後寫到了 初始化這塊
初始化一個$scope下的變量
$scope.ctrlContent = '大家好。我叫小雪'

.dirctive( ) 。弄了一個控製器,這個東西是 顯示的是 展示的值,傳給 寫一個符號就好使。 scope : { content : '@' } 這是一種特別常見的東西,會自動把作用域上的,賦值給該指令的content屬性中。傳值。
感覺繞來繞去,自定義的東西不能寫死。

雙向綁定 21_雙向綁定.html 看代碼可以通過序號來查找!
比如說,把代碼寫出來,架構
明天會寫路由。但是不確定在這裏寫。預估是在豆瓣裏寫!

當前控製器:
input type="text" ng-model="ctrlContent"
自定義指令:
xiao-xue content="ctrlContent"

上麵是輸入框,下麵是要讓自定義模板,最後,有一個input框
.controller('MainCtrl',['$scope',function ($scope){初始化}])
.directive('xiaoXue',[function () { return {restrict : 'E' , replace : true, template : '<input type="text" ng-model="" '} }])
語法有些區別,想要實現兩個輸入框,進行關聯,單項關聯,顯示在頁麵上麵。 ng-model 要的是一個值 ,content 。還要加上 @ 符。 再試試等號 =

雙向綁定 加上這個值,我可以正向 ‘@’ 有改變 在當前控製器,自定義控製器裏的內容也隨之改變。
語法規定 用了 = 要去掉大括號 。 看自定義指令的注釋:
當使用 @的時候,這裏要加上 {{ }} ,而使用 = 的時候不要加入 {{ }}

22_函數綁定.html
控製器和指令,先把架子打起來。看到的自定義屬性,標簽的屬性,函數,$scope.sayHello = function (name) {}
指令 .directive('xiaoXue',[function ()])
裏麵是一個文本框。 ng-model關聯的東西 是userName
很有特點,輸入框,我要點擊這個按鈕,調用sayHello方法 有一定的關聯。首先得有一個,ng-click=""這個方法很特殊。觸發方法是sayHello 但是裏寫的say 需要傳一個對象。
say()方法關聯的就是作用域下的sayHello方法,sayHello方法需要一個參數,我們在調用say方法傳參的時候,要傳入一個對象,sayHello需要的形參就是這個對象的某個屬性。
template : 。。say({name : userName}) ... 它是一個函數,需要一個參數,需要給個對象。 試試好不好使!運行!這個時候,使用一下會發現要加上用 & 有把函數綁定的功能!這樣就可以 在控製台裏可以看到,無論怎麼關聯,都可以看,要是不好記,粘過來,改。

最後更新:2017-04-11 17:31:02

  上一篇:go 假笨說-類初始化死鎖導致線程被打爆!打爆!爆!
  下一篇:go 論文導讀:對抗樣本與學習