angular view之間的資料傳遞

2022-07-17 06:18:09 字數 1358 閱讀 5612

之前寫過一篇backbone view之間的傳遞,由於現在在用angular搞開發,現在也來總結一下。在angular 傳遞資料通俗的講叫做 廣播 ,在一些文章中,也叫做事件的發布與訂閱,在angular中通過 發布與訂閱制定了資料的傳遞,使用時,在出發點廣播事件,這個事件後面的引數是傳遞的資料,在適當的位置去進行接收,具體到開發中,對應著$scope和$rootscope的$emit$broadcast$on方法。首先了解一下概念:

1.$scope與$scope之間的關係,$scope與$rootscope之間的關係

$rootscope是最頂部的大哥,是所有$scope的老大,而$scope與$scope之間,就比較多了,有可能是父子關係,也有可能是兄弟關係,angular為每乙個controller分配乙個獨立的$scope,$scope之間的關係也就是由controller之間的關係來決定的。

}

}}

2.廣播,接收與銷毀

$broadcast$emit用於廣播事件,他們將事件名稱和事件內容發布出去,就像是高考榜單一樣,事件名稱相當於考生的名字,而事件內容相當於考生的成績等資訊,而$broadcast$emit的不同之處在於$broadcast是自上而下的廣播,所有能聽到的都可以對其進行反應。而$emit是自下而上的射箭,只有在箭矢的軌跡上才能對其做出反應。

$scope.$broadcast('event_name', 'data to send');

$scope.$emit('event_name', 'data to send');

$scope.$on('event_name', function(event, args) );

angular的銷毀是在$on中,使用$on接收事件時會返回乙個函式,而此函式就是用來退訂事件的方法,就像是考生看到了自己的成績後稟告父母大人,「商量著」選取學校填報志願,而此志願單就是結束整個高考榜單的結束:

// 接收事件返回用於銷毀事件的函式

var deregister = $scope.$on('event_name', function(event, args) );

// 銷毀事件

deregister();

ok  這就類似於backbone中的事件序號產生器,相比之下 trigger on 要更簡單暴力一些,至於angular為什麼要這麼設計,我還只是乙個初學者 不能理解。

python進製數之間的轉換

常用的進製數為2進製,常用b bin表示,由0,1兩個字元組成 8進製,常用o oct表示,由0 7七個字元組成 10進製,也是我們最經常用的,由0 9十個字元組成 16進製制,常用h hex表示,由0 9,a f十六個字元組成。十進位制轉換為其他進製 給定乙個十進位制數轉換為其他進製 number...

進製數及之間轉換

二進位制 八進位制 十進位制與十六進製制的特徵對照表如表所示 進製 基數 數碼 計數規則 數的表示法 十進位制 10 d 0 9 逢十進一 1234 10 或1234d 二進位制 2 b 0 1 逢二進一 101 2 或101b 八進位制 8 o 0 7 逢八進一 3467 8 或3467o 十六進...

2個數之間的水仙花數

春天是鮮花的季節,水仙花就是其中最迷人的代表,數學上有個水仙花數,他是這樣定義的 水仙花數 是指乙個三位數,它的各位數字的立方和等於其本身,比如 153 1 3 5 3 3 3。現在要求輸出所有在m和n範圍內的水仙花數。輸入資料有多組,每組佔一行,包括兩個整數m和n 100 m n 999 對於每個...