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

首頁 > 語言 > JavaScript > 正文

詳解Angular.js指令中scope類型的幾種特殊情況

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

前言

大家都知道在默認情況下,指令應該訪問父作用域.如果我們對指令暴露了父控制器的scope,那么指令就可以自由的修改scope屬性.在一些情況下,你的指令可能想要添加一些只有內部可以使用的屬性和函數,如果我們都在父作用域中完成,可能會污染了父作用域,因此,我們有以下兩種選擇:

使用父作用域-如果不需要操作父作用域屬性,不需要一個新的作用域,可以直接使用父作用域

scope:false

一個子作用域-這個作用域會原型繼承父作用域

scope:true

一個隔離的作用域-一個全新的、不繼承、獨立存在的作用域

scope:{}

作用域可以由指令定義對象中的scope屬性定義,下面是關于scope屬性的一些說明:

指令中的scope常見的類型

=

    '=',用于子作用域與父作用域雙向綁定.使用這種方法可以將一個實際的作用域模型賦值給一個屬性,而不是一個普通的字符串.效果是你可以傳遞復雜的數據模型,例如數組/對象等到隔離作用域.父作用域或者子作用域屬性發生了改變,會相應影響對方. '=?',這種情況可以避免父作用域屬性中不存在當前屬性情況,避免拋出異常.--'If the parent scope property doesn't exist, it will throw a NON_ASSIGNABLE_MODEL_EXPRESSION exception. You can avoid this behavior using `=?` or `=?attr` in order to flag the property as optional.' '=*',If you want to shallow watch for changes (i.e. $watchCollection instead of $watch) you can use `=*` or `=*attr` (`=*?` or `=*?attr` if the property is optional).

&

    '&',用于執行父作用域中的函數.

@

    '@',進行單項文本綁定.使用這種方法可以將字符串傳遞到屬性,當父作用域屬性發生變化時,隔離作用域模型也發生變化.然而,反之則不成立!你不能通過操縱隔離作用域來改變父作用域.

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對錯新站長站的支持。

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

圖片精選

主站蜘蛛池模板: 枣阳市| 交城县| 新平| 嘉荫县| 曲水县| 监利县| 钟山县| 望城县| 全南县| 鄂尔多斯市| 新营市| 长治县| 安溪县| 澜沧| 上杭县| 吉安县| 新昌县| 岑溪市| 柘城县| 陵川县| 四子王旗| 通榆县| 休宁县| 道真| 锡林郭勒盟| 依兰县| 衢州市| 昌邑市| 临海市| 凌海市| 纳雍县| 福安市| 庄河市| 晋宁县| 桐城市| 桂平市| 武穴市| 塘沽区| 西乡县| 温宿县| 门源|